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 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 assignment_target
| 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
| EDotPrivate 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 * bool * 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 {
delegate : bool;
expr : expression option;
}
| EPrivName of identifier
| 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
| ForAwaitOf_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
| With_statement of expression * statement * location
| 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
| Import of import * Parse_info.t
| Export of export * Parse_info.t
and block = statement_list
and variable_declaration =
| DeclIdent of 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, ident) list_with_rest
| ArrayBinding of (binding_element option, binding) list_with_rest
and object_target_elt =
| TargetPropertyId of ident_prop * initialiser option
| TargetProperty of property_name * expression * initialiser option
| TargetPropertySpread of expression
| TargetPropertyMethod of property_name * method_
and array_target_elt =
| TargetElementId of ident * initialiser option
| TargetElementHole
| TargetElement of expression
| TargetElementSpread of expression
and assignment_target =
| ObjectTarget of object_target_elt list
| ArrayTarget of array_target_elt list
and binding_property =
| Prop_binding of property_name * binding_element
| Prop_ident of ident_prop * initialiser option
and function_body = statement_list
and program = statement_list
and export =
| ExportVar of variable_declaration_kind * variable_declaration list
| ExportFun of ident * function_declaration
| ExportClass of ident * class_declaration
| ExportNames of (ident * Stdlib.Utf8_string.t) list
| ExportDefaultFun of ident option * function_declaration
| ExportDefaultClass of ident option * class_declaration
| ExportDefaultExpression of expression
| ExportFrom of {
kind : export_from_kind;
from : Stdlib.Utf8_string.t;
}
| CoverExportFrom of early_error
and export_from_kind =
| Export_all of Stdlib.Utf8_string.t option
| Export_names of (Stdlib.Utf8_string.t * Stdlib.Utf8_string.t) list
and import_default = ident
and import_kind =
| Namespace of import_default option * ident
| Named of import_default option * (Stdlib.Utf8_string.t * ident) list
| Default of import_default
| SideEffect
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 :
?kind:variable_declaration_kind ->
(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_target_of_expr : binop option -> expression -> expression