`include Target_sig.S`
`type expression = Code_generation.expression`
`module Memory : sig ... end`
`module Type : sig ... end`
`module Value : sig ... end`
`module Constant : sig ... end`
`module Closure : sig ... end`
`module Math : sig ... end`
`val internal_primitives : (string * Js_of_ocaml_compiler.Primitive.kind * ((Js_of_ocaml_compiler.Code.prim_arg -> expression) -> Js_of_ocaml_compiler.Code.prim_arg list -> expression)) list`
`val handle_exceptions : result_typ:Wasm_ast.value_type list -> fall_through:'a -> context:([> `Catch | `Skip ] as 'b) list -> (result_typ:Wasm_ast.value_type list -> fall_through:[> `Skip ] -> context:'b list -> unit Code_generation.t) -> Wasm_ast.var -> (result_typ:Wasm_ast.value_type list -> fall_through:'a -> context:'b list -> unit Code_generation.t) -> unit Code_generation.t`
`val post_process_function_body : param_names:Wasm_ast.var list -> locals:(Wasm_ast.var * Wasm_ast.value_type) list -> Wasm_ast.instruction list -> (Wasm_ast.var * Wasm_ast.value_type) list * Wasm_ast.instruction list`
`val entry_point : toplevel_fun:Wasm_ast.var -> Wasm_ast.func_type * Wasm_ast.var list * unit Code_generation.t`