Vmvalues
Values
type vstack = values array
val type_atom_tag : tag
val max_atom_tag : tag
val proj_tag : tag
val fix_app_tag : tag
val switch_tag : tag
val cofix_tag : tag
val cofix_evaluated_tag : tag
type structured_constant =
| Const_sort of Sorts.t |
| Const_ind of Names.inductive |
| Const_b0 of tag |
| Const_univ_level of Univ.Level.t |
| Const_val of structured_values |
| Const_uint of Uint63.t |
| Const_float of Float64.t |
val pp_struct_const : structured_constant -> Pp.t
type reloc_table = (tag * int) array
val eq_structured_constant : structured_constant -> structured_constant -> bool
val hash_structured_constant : structured_constant -> int
val eq_annot_switch : annot_switch -> annot_switch -> bool
val hash_annot_switch : annot_switch -> int
val crazy_val : values
Machine code
type vswitch = {
sw_type_code : tcode; |
sw_code : tcode; |
sw_annot : annot_switch; |
sw_stk : vstack; |
sw_env : vm_env; |
}
val mkAccuCode : int -> tcode
type id_key =
| ConstKey of Names.Constant.t |
| VarKey of Names.Id.t |
| RelKey of Int.t |
| EvarKey of Evar.t |
val get_atom_rel : unit -> atom array
Global table of rels
Zippers
type stack = zipper list
For debugging purposes only
Constructors
val val_of_str_const : structured_constant -> values
val val_of_rel : int -> values
val val_of_named : Names.Id.t -> values
val val_of_constant : Names.Constant.t -> values
val val_of_int : int -> structured_values
val val_of_block : tag -> structured_values array -> structured_values
val val_of_uint : Uint63.t -> structured_values
val val_of_annot_switch : annot_switch -> values
Destructors
val uni_lvl_val : values -> Univ.Level.t
Arguments
val nargs : arguments -> int
Product
val closure_arity : vfun -> int
Fun
Fix
val current_fix : vfix -> int
val rec_args : vfix -> int array
CoFix
val current_cofix : vcofix -> int
Block
val btag : vblock -> int
val bsize : vblock -> int
Switch
val parray_make : values
Primitives implemented in OCaml, seen as values (to be used as globals)
val parray_get : values
val parray_get_default : values
val parray_set : values
val parray_copy : values
val parray_length : values