js_of_ocaml-camlp4

Compiler from OCaml bytecode to Javascript
IN THIS PACKAGE
Module Pa_js . Make

Parameters

module Syntax : Camlp4.Sig.Camlp4Syntax

Signature

include module type of struct include Syntax end
module Loc : sig ... end
module Ast : sig ... end
module Token : sig ... end
module Gram : sig ... end
module Quotation : sig ... end
module AntiquotSyntax : sig ... end
type warning = Loc.t -> string -> unit
val default_warning : warning
val current_warning : warning Pervasives.ref
val print_warning : warning
val parse_implem : ?directive_handler:( Ast.str_item -> Ast.str_item option ) -> Ast.loc -> char Stream.t -> Ast.str_item
val parse_interf : ?directive_handler:( Ast.sig_item -> Ast.sig_item option ) -> Ast.loc -> char Stream.t -> Ast.sig_item
val print_interf : ?input_file:string -> ?output_file:string -> Ast.sig_item -> unit
val print_implem : ?input_file:string -> ?output_file:string -> Ast.str_item -> unit
val interf : (Ast.sig_item list * Loc.t option) Gram.Entry.t
val implem : (Ast.str_item list * Loc.t option) Gram.Entry.t
val top_phrase : Ast.str_item option Gram.Entry.t
val use_file : (Ast.str_item list * Loc.t option) Gram.Entry.t
val a_CHAR : string Gram.Entry.t
val a_FLOAT : string Gram.Entry.t
val a_INT : string Gram.Entry.t
val a_INT32 : string Gram.Entry.t
val a_INT64 : string Gram.Entry.t
val a_LABEL : string Gram.Entry.t
val a_LIDENT : string Gram.Entry.t
val a_NATIVEINT : string Gram.Entry.t
val a_OPTLABEL : string Gram.Entry.t
val a_STRING : string Gram.Entry.t
val a_UIDENT : string Gram.Entry.t
val a_ident : string Gram.Entry.t
val amp_ctyp : Ast.ctyp Gram.Entry.t
val and_ctyp : Ast.ctyp Gram.Entry.t
val match_case : Ast.match_case Gram.Entry.t
val match_case0 : Ast.match_case Gram.Entry.t
val match_case_quot : Ast.match_case Gram.Entry.t
val binding_quot : Ast.binding Gram.Entry.t
val rec_binding_quot : Ast.rec_binding Gram.Entry.t
val class_declaration : Ast.class_expr Gram.Entry.t
val class_description : Ast.class_type Gram.Entry.t
val class_expr : Ast.class_expr Gram.Entry.t
val class_expr_quot : Ast.class_expr Gram.Entry.t
val class_fun_binding : Ast.class_expr Gram.Entry.t
val class_fun_def : Ast.class_expr Gram.Entry.t
val class_info_for_class_expr : Ast.class_expr Gram.Entry.t
val class_info_for_class_type : Ast.class_type Gram.Entry.t
val class_longident : Ast.ident Gram.Entry.t
val class_longident_and_param : Ast.class_expr Gram.Entry.t
val class_name_and_param : (string * Ast.ctyp) Gram.Entry.t
val class_sig_item : Ast.class_sig_item Gram.Entry.t
val class_sig_item_quot : Ast.class_sig_item Gram.Entry.t
val class_signature : Ast.class_sig_item Gram.Entry.t
val class_str_item : Ast.class_str_item Gram.Entry.t
val class_str_item_quot : Ast.class_str_item Gram.Entry.t
val class_structure : Ast.class_str_item Gram.Entry.t
val class_type : Ast.class_type Gram.Entry.t
val class_type_declaration : Ast.class_type Gram.Entry.t
val class_type_longident : Ast.ident Gram.Entry.t
val class_type_longident_and_param : Ast.class_type Gram.Entry.t
val class_type_plus : Ast.class_type Gram.Entry.t
val class_type_quot : Ast.class_type Gram.Entry.t
val comma_ctyp : Ast.ctyp Gram.Entry.t
val comma_expr : Ast.expr Gram.Entry.t
val comma_ipatt : Ast.patt Gram.Entry.t
val comma_patt : Ast.patt Gram.Entry.t
val comma_type_parameter : Ast.ctyp Gram.Entry.t
val constrain : (Ast.ctyp * Ast.ctyp) Gram.Entry.t
val constructor_arg_list : Ast.ctyp Gram.Entry.t
val constructor_declaration : Ast.ctyp Gram.Entry.t
val constructor_declarations : Ast.ctyp Gram.Entry.t
val ctyp_quot : Ast.ctyp Gram.Entry.t
val cvalue_binding : Ast.expr Gram.Entry.t
val direction_flag : Ast.direction_flag Gram.Entry.t
val direction_flag_quot : Ast.direction_flag Gram.Entry.t
val dummy : unit Gram.Entry.t
val eq_expr : ( string -> Ast.patt -> Ast.patt ) Gram.Entry.t
val expr_eoi : Ast.expr Gram.Entry.t
val expr_quot : Ast.expr Gram.Entry.t
val field_expr : Ast.rec_binding Gram.Entry.t
val field_expr_list : Ast.rec_binding Gram.Entry.t
val fun_binding : Ast.expr Gram.Entry.t
val fun_def : Ast.expr Gram.Entry.t
val ident_quot : Ast.ident Gram.Entry.t
val ipatt_tcon : Ast.patt Gram.Entry.t
val label : string Gram.Entry.t
val label_declaration : Ast.ctyp Gram.Entry.t
val label_declaration_list : Ast.ctyp Gram.Entry.t
val label_expr : Ast.rec_binding Gram.Entry.t
val label_expr_list : Ast.rec_binding Gram.Entry.t
val label_ipatt : Ast.patt Gram.Entry.t
val label_ipatt_list : Ast.patt Gram.Entry.t
val label_longident : Ast.ident Gram.Entry.t
val label_patt : Ast.patt Gram.Entry.t
val label_patt_list : Ast.patt Gram.Entry.t
val labeled_ipatt : Ast.patt Gram.Entry.t
val let_binding : Ast.binding Gram.Entry.t
val meth_decl : Ast.ctyp Gram.Entry.t
val module_binding : Ast.module_binding Gram.Entry.t
val module_binding0 : Ast.module_expr Gram.Entry.t
val module_binding_quot : Ast.module_binding Gram.Entry.t
val module_declaration : Ast.module_type Gram.Entry.t
val module_expr : Ast.module_expr Gram.Entry.t
val module_expr_quot : Ast.module_expr Gram.Entry.t
val module_longident : Ast.ident Gram.Entry.t
val module_longident_with_app : Ast.ident Gram.Entry.t
val module_rec_declaration : Ast.module_binding Gram.Entry.t
val module_type : Ast.module_type Gram.Entry.t
val package_type : Ast.module_type Gram.Entry.t
val module_type_quot : Ast.module_type Gram.Entry.t
val more_ctyp : Ast.ctyp Gram.Entry.t
val name_tags : Ast.ctyp Gram.Entry.t
val opt_as_lident : string Gram.Entry.t
val opt_class_self_patt : Ast.patt Gram.Entry.t
val opt_class_self_type : Ast.ctyp Gram.Entry.t
val opt_comma_ctyp : Ast.ctyp Gram.Entry.t
val opt_dot_dot : Ast.row_var_flag Gram.Entry.t
val row_var_flag_quot : Ast.row_var_flag Gram.Entry.t
val opt_eq_ctyp : Ast.ctyp Gram.Entry.t
val opt_expr : Ast.expr Gram.Entry.t
val opt_meth_list : Ast.ctyp Gram.Entry.t
val opt_mutable : Ast.mutable_flag Gram.Entry.t
val mutable_flag_quot : Ast.mutable_flag Gram.Entry.t
val opt_override : Ast.override_flag Gram.Entry.t
val override_flag_quot : Ast.override_flag Gram.Entry.t
val opt_polyt : Ast.ctyp Gram.Entry.t
val opt_private : Ast.private_flag Gram.Entry.t
val private_flag_quot : Ast.private_flag Gram.Entry.t
val opt_nonrec : Ast.rec_flag Gram.Entry.t
val rec_flag_quot : Ast.rec_flag Gram.Entry.t
val opt_virtual : Ast.virtual_flag Gram.Entry.t
val virtual_flag_quot : Ast.virtual_flag Gram.Entry.t
val opt_when_expr : Ast.expr Gram.Entry.t
val patt_as_patt_opt : Ast.patt Gram.Entry.t
val patt_eoi : Ast.patt Gram.Entry.t
val patt_quot : Ast.patt Gram.Entry.t
val patt_tcon : Ast.patt Gram.Entry.t
val poly_type : Ast.ctyp Gram.Entry.t
val row_field : Ast.ctyp Gram.Entry.t
val sem_expr : Ast.expr Gram.Entry.t
val sem_expr_for_list : ( Ast.expr -> Ast.expr ) Gram.Entry.t
val sem_patt : Ast.patt Gram.Entry.t
val sem_patt_for_list : ( Ast.patt -> Ast.patt ) Gram.Entry.t
val semi : unit Gram.Entry.t
val sequence : Ast.expr Gram.Entry.t
val do_sequence : Ast.expr Gram.Entry.t
val sig_item : Ast.sig_item Gram.Entry.t
val sig_item_quot : Ast.sig_item Gram.Entry.t
val sig_items : Ast.sig_item Gram.Entry.t
val star_ctyp : Ast.ctyp Gram.Entry.t
val str_item : Ast.str_item Gram.Entry.t
val str_item_quot : Ast.str_item Gram.Entry.t
val str_items : Ast.str_item Gram.Entry.t
val type_constraint : unit Gram.Entry.t
val type_declaration : Ast.ctyp Gram.Entry.t
val type_ident_and_parameters : (Ast.ident * Ast.ctyp list) Gram.Entry.t
val type_kind : Ast.ctyp Gram.Entry.t
val type_longident : Ast.ident Gram.Entry.t
val type_longident_and_parameters : Ast.ctyp Gram.Entry.t
val type_parameter : Ast.ctyp Gram.Entry.t
val type_parameters : ( Ast.ctyp -> Ast.ctyp ) Gram.Entry.t
val typevars : Ast.ctyp Gram.Entry.t
val val_longident : Ast.ident Gram.Entry.t
val value_let : unit Gram.Entry.t
val value_val : unit Gram.Entry.t
val with_constr : Ast.with_constr Gram.Entry.t
val with_constr_quot : Ast.with_constr Gram.Entry.t
val prefixop : Ast.expr Gram.Entry.t
val infixop0 : Ast.expr Gram.Entry.t
val infixop1 : Ast.expr Gram.Entry.t
val infixop2 : Ast.expr Gram.Entry.t
val infixop3 : Ast.expr Gram.Entry.t
val infixop4 : Ast.expr Gram.Entry.t
val inside_Js : bool lazy_t
val js_t_id : Ast.loc -> string -> Ast.ctyp
val js_u_id : Ast.loc -> string -> Ast.expr
val js_id : Ast.loc -> string -> Ast.expr
val filter : (Camlp4.Sig.camlp4_token * Loc.t) Stream.t -> (Camlp4.Sig.camlp4_token * Loc.t) Stream.t
val parse_comma_list : Ast.expr -> Ast.expr list
val to_sem_expr : Ast.loc -> Ast.expr list -> Ast.expr
val make_array : Ast.loc -> Ast.expr list -> Ast.expr
val with_type : Ast.expr -> Ast.ctyp -> Ast.expr
val unescape : string -> string
val fresh_type : Ast.loc -> Ast.ctyp
val arrows : Ast.loc -> Ast.ctyp list -> Ast.ctyp -> Ast.ctyp
val funs : Ast.loc -> string list -> Ast.expr -> Ast.expr
val apply : Ast.loc -> Ast.expr -> Ast.expr list -> Ast.expr
val constrain_types : Ast.loc -> Ast.loc -> string -> Ast.loc -> string -> Ast.ctyp -> Syntax.Loc.t -> string -> Ast.ctyp -> (Ast.expr * string * Ast.ctyp) list -> Ast.expr
val method_call : Ast.loc -> Ast.expr -> string -> Syntax.Loc.t -> Ast.expr list -> Ast.expr
val new_object : Ast.loc -> Ast.expr -> Ast.expr list -> Ast.expr
val parse_field_list : Ast.rec_binding -> Ast.rec_binding list
val parse_class_str_list : Ast.class_str_item -> Ast.class_str_item list
type 'a loc = 'a * Loc.t
type val_ = {
val_label : string loc;
val_mutabl : bool;
val_body : Ast.expr loc;
val_typ : Ast.ctyp;
}
type meth_ = {
meth_label : string loc;
meth_body : Ast.expr loc;
meth_fun_typ : Ast.ctyp list;
meth_ret_typ : Ast.ctyp;
}
type val_and_meth = [
| `Val of val_
| `Meth of meth_
]
val parse_field : Ast.rec_binding -> val_and_meth
val parse_class_item : Ast.class_str_item -> val_and_meth
val literal_object : Ast.loc -> ?self:Ast.patt -> val_and_meth list -> Ast.expr
val jsmeth : (Gram.Loc.t * string) Gram.Entry.t
val opt_class_self_patt_jsoo : Ast.patt Gram.Entry.t