Module Declaration_parser.Declaration

Parameters

Signature

let async: Parser_env.env => (bool, list(Flow_ast.Comment.t(Loc.t)));
let generator: Parser_env.env => (bool, list(Flow_ast.Comment.t(Loc.t)));
let variance: Parser_env.env => parse_readonly:bool => bool => bool => option(Flow_ast.Variance.t(Loc.t));
let function_params: await:bool => yield:bool => Parser_env.env => Js_parser.Comment_attachment.Ast.Function.Params.t(Loc.t, Loc.t);
let function_body: Parser_env.env => async:bool => generator:bool => expression:bool => simple_params:bool => (Flow_ast.Function.body(Loc.t, Loc.t), bool);
let check_unique_formal_parameters: Parser_env.env => Js_parser.Comment_attachment.Ast.Function.Params.t(Loc.t, Loc.t) => unit;
let check_unique_component_formal_parameters: Parser_env.env => Js_parser.Comment_attachment.Ast.Statement.ComponentDeclaration.Params.t (Loc.t, Loc.t) => unit;
let strict_function_post_check: Parser_env.env => contains_use_strict:bool => option(Flow_ast.Identifier.t(Loc.t, Loc.t)) => Js_parser.Comment_attachment.Ast.Function.Params.t(Loc.t, Loc.t) => unit;
let strict_component_post_check: Parser_env.env => contains_use_strict:bool => Flow_ast.Identifier.t(Loc.t, Loc.t) => Js_parser.Comment_attachment.Ast.Statement.ComponentDeclaration.Params.t (Loc.t, Loc.t) => unit;
let enum_declaration: ?leading:list(Flow_ast.Comment.t(Loc.t)) => Parser_env.env => Flow_ast.Statement.t(Loc.t, Loc.t);