Js_parser.Parser_flow
module Sedlexing = Flow_sedlexing;
module Ast = Flow_ast;
let filter_duplicate_errors:
list((Loc.t, Parse_error.t)) =>
list((Loc.t, Parse_error.t));
let check_for_duplicate_exports:
Parser_env.env =>
list((Loc.t, Ast.Statement.t'(Loc.t, Loc.t))) =>
unit;
module Parse: Parser_common.PARSER;
let do_parse:
Parser_env.env =>
(Parser_env.env => 'a) =>
bool =>
('a, list((Loc.t, Parse_error.t)));
let parse_program:
bool =>
?token_sink:option((Parser_env.token_sink_result => unit)) =>
?parse_options:option(Parser_env.parse_options) =>
option(File_key.t) =>
string =>
(Flow_ast.Program.t(Loc.t, Loc.t), list((Loc.t, Parse_error.t)));
let program:
?fail:bool =>
?token_sink:option((Parser_env.token_sink_result => unit)) =>
?parse_options:option(Parser_env.parse_options) =>
string =>
(Flow_ast.Program.t(Loc.t, Loc.t), list((Loc.t, Parse_error.t)));
let program_file:
?fail:bool =>
?token_sink:option((Parser_env.token_sink_result => unit)) =>
?parse_options:option(Parser_env.parse_options) =>
string =>
option(File_key.t) =>
(Flow_ast.Program.t(Loc.t, Loc.t), list((Loc.t, Parse_error.t)));
let parse_annot:
?parse_options:option(Parser_env.parse_options) =>
option(File_key.t) =>
string =>
(Flow_ast.Type.annotation(Loc.t, Loc.t), list((Loc.t, Parse_error.t)));
let package_json_file:
?fail:bool =>
?token_sink:option((Parser_env.token_sink_result => unit)) =>
?parse_options:option(Parser_env.parse_options) =>
string =>
option(File_key.t) =>
((Loc.t, Flow_ast.Expression.Object.t(Loc.t, Loc.t)), list((Loc.t,
Parse_error.t)));
let json_file:
?fail:bool =>
?token_sink:option((Parser_env.token_sink_result => unit)) =>
?parse_options:option(Parser_env.parse_options) =>
string =>
option(File_key.t) =>
(Flow_ast.Expression.t(Loc.t, Loc.t), list((Loc.t, Parse_error.t)));
let jsx_pragma_expression:
string =>
option(File_key.t) =>
(Flow_ast.Expression.t(Loc.t, Loc.t), list((Loc.t, Parse_error.t)));