Module Primitive
type native_repr = | Same_as_ocaml_repr| Unboxed_float| Unboxed_integer of Primitive.boxed_integer| Untagged_immediate
type description = private {prim_name : string;prim_arity : int;prim_alloc : bool;prim_native_name : string;prim_native_repr_args : Primitive.native_repr list;prim_native_repr_res : Primitive.native_repr;
}val simple : name:string -> arity:int -> alloc:bool -> Primitive.descriptionval make :
name:string ->
alloc:bool ->
native_name:string ->
native_repr_args:Primitive.native_repr list ->
native_repr_res:Primitive.native_repr ->
Primitive.descriptionval parse_declaration :
Parsetree.value_description ->
native_repr_args:Primitive.native_repr list ->
native_repr_res:Primitive.native_repr ->
Primitive.descriptionval print :
Primitive.description ->
Outcometree.out_val_decl ->
Outcometree.out_val_declval native_name : Primitive.description -> stringval byte_name : Primitive.description -> stringval equal_boxed_integer :
Primitive.boxed_integer ->
Primitive.boxed_integer ->
boolval equal_native_repr : Primitive.native_repr -> Primitive.native_repr -> boolval native_name_is_external : Primitive.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 * Primitive.error