Primitivetype native_repr = | Same_as_ocaml_repr |
| Unboxed_float |
| Unboxed_integer of boxed_integer |
| Untagged_int |
type description = private {prim_name : string; |
prim_arity : int; |
prim_alloc : bool; |
prim_native_name : string; |
prim_native_repr_args : native_repr list; |
prim_native_repr_res : native_repr; |
}val simple : name:string -> arity:int -> alloc:bool -> descriptionval make : name:string -> alloc:bool -> native_name:string ->
native_repr_args:native_repr list -> native_repr_res:native_repr -> descriptionval parse_declaration : Parsetree.value_description -> native_repr_args:native_repr list -> native_repr_res:native_repr -> descriptionval print : description -> Outcometree.out_val_decl -> Outcometree.out_val_declval native_name : description -> stringval byte_name : description -> stringval native_name_is_external : description -> boolnative_name_is_externa returns true iff the native_name for the given primitive identifies that the primitive is not implemented in the compiler itself.
exception Error of Location.t * error