Js_of_ocaml_compiler.Javascript
module Num : sig ... end
module Label : sig ... end
type identifier = Stdlib.Utf8_string.t
and array_litteral = element_list
and element_list = element list
and binop =
and arguments = argument list
and property_list = property list
and property =
| Property of property_name * expression |
| PropertySpread of expression |
| PropertyMethod of property_name * method_ |
| CoverInitializedName of early_error * ident * initialiser |
and method_ =
| MethodGet of function_declaration |
| MethodSet of function_declaration |
| Method of function_declaration |
and property_name =
| PNI of identifier |
| PNS of Stdlib.Utf8_string.t |
| PNN of Num.t |
| PComputed of expression |
and expression =
| ESeq of expression * expression |
| ECond of expression * expression * expression |
| EAssignTarget of binding_pattern |
| EBin of binop * expression * expression |
| EUn of unop * expression |
| ECall of expression * access_kind * arguments * location |
| ECallTemplate of expression * template * location |
| EAccess of expression * access_kind * expression |
| EDot of expression * access_kind * identifier |
| ENew of expression * arguments option |
| EVar of ident |
| EFun of ident option * function_declaration |
| EClass of ident option * class_declaration |
| EArrow of function_declaration * arrow_info |
| EStr of Stdlib.Utf8_string.t |
| ETemplate of template |
| EArr of array_litteral |
| EBool of bool |
| ENum of Num.t |
| EObj of property_list |
| ERegexp of string * string option |
| EYield of expression option |
| CoverParenthesizedExpressionAndArrowParameterList of early_error |
| CoverCallExpressionAndAsyncArrowHead of early_error |
and template = template_part list
and statement =
| Block of block |
| Variable_statement of variable_declaration_kind * variable_declaration list |
| Function_declaration of ident * function_declaration |
| Class_declaration of ident * class_declaration |
| Empty_statement |
| Expression_statement of expression |
| If_statement of expression
* statement * location
* (statement * location) option |
| Do_while_statement of statement * location * expression |
| While_statement of expression * statement * location |
| For_statement of ( expression option,
variable_declaration_kind * variable_declaration list )
either
* expression option
* expression option
* statement * location |
| ForIn_statement of ( expression, variable_declaration_kind * for_binding )
either
* expression
* statement * location |
| ForOf_statement of ( expression, variable_declaration_kind * for_binding )
either
* expression
* statement * location |
| Continue_statement of Label.t option |
| Break_statement of Label.t option |
| Return_statement of expression option |
| Labelled_statement of Label.t * statement * location |
| Switch_statement of expression
* case_clause list
* statement_list option
* case_clause list |
| Throw_statement of expression |
| Try_statement of block
* (formal_parameter option * block) option
* block option |
| Debugger_statement |
and block = statement_list
and variable_declaration =
| DeclIdent of binding_ident * initialiser option |
| DeclPattern of binding_pattern * initialiser |
and case_clause = expression * statement_list
and initialiser = expression * location
and function_declaration =
function_kind * formal_parameter_list * function_body * location
and class_element =
| CEMethod of bool * class_element_name * method_ |
| CEField of bool * class_element_name * initialiser option |
| CEStaticBLock of statement_list |
and formal_parameter_list = ( formal_parameter, binding ) list_with_rest
and formal_parameter = binding_element
and for_binding = binding
and binding_element = binding * initialiser option
and binding_pattern =
| ObjectBinding of ( binding_property, binding_ident ) list_with_rest |
| ArrayBinding of ( binding_element option, binding ) list_with_rest |
and binding_ident = ident
and binding_property =
| Prop_binding of property_name * binding_element |
| Prop_ident of binding_ident * initialiser option |
and function_body = statement_list
and program = statement_list
and program_with_annots =
(statement_list * (Js_token.Annot.t * Parse_info.t) list) list
val is_ident' : Stdlib.Utf8_string.t -> bool
val ident : ?loc:location -> ?var:Code.Var.t -> identifier -> ident
val param : ?loc:location -> ?var:Code.Var.t -> identifier -> formal_parameter
val param' : ident -> formal_parameter
val ident_unsafe : ?loc:location -> ?var:Code.Var.t -> identifier -> ident
val bound_idents_of_params : formal_parameter_list -> ident list
val bound_idents_of_variable_declaration : variable_declaration -> ident list
val bound_idents_of_pattern : binding_pattern -> ident list
val dot : expression -> identifier -> expression
val array : expression list -> expression
val call : expression -> expression list -> location -> expression
val variable_declaration : (ident * initialiser) list -> statement
val list : 'a list -> ( 'a, _ ) list_with_rest
val early_error : ?reason:string -> Parse_info.t -> early_error
val fun_ : ident list -> statement_list -> location -> function_declaration
val assignment_pattern_of_expr :
binop option ->
expression ->
binding_pattern option