compilationUnit method

Parser<CompilationUnitNode> compilationUnit()
inherited

Implementation

Parser<CompilationUnitNode> compilationUnit() =>
    seq5(
      ref0(hashbang).optional(),
      ref0(libraryDirective).optional(),
      ref0(directive).star(),
      ref0(topLevelDefinition).star(),
      ref0(hiddenStuffWhitespace).star(),
    ).map5(
      (hb, lib, directives, decls, _) => CompilationUnitNode(
        hashbang: hb,
        directives: [?lib, ...directives],
        declarations: decls,
      ),
    );