Operation.Unarymodule Int_op : sig ... endmodule Float_op : sig ... endtype 'mode t = | Integral of 'mode Integral.t * Int_op.t| Floating of 'mode Floating.t * Float_op.t| Static_cast of {src : any_locality_mode scalar;dst : 'mode scalar;}Static_cast performs a conversion between numeric types, which may include (un)tagging or (un)boxing. The jane/doc/scalars.md file contains detailed documentation of the semantics. The middle end expands the static cast operations into finer-grained primitives (for example %int64_as_int, which is represented as a static case, will turn into an unboxing followed by an int64 -> int conversion, the latter of which takes the integer modulo 2^63 (2^31 on 32-bit targets).
val sort :
any_locality_mode t ->
Jkind_types.Sort.Const.t * Jkind_types.Sort.Const.t