Module Jkind.Const
type 'd t = 'd Jkind0.Const.t constraint 'd = 'l * 'rConstant jkinds are used for user-written annotations. They are not actually constant, though: they might contain variables in with-types. The "constant" refers to the fact that there are no sort variables here. The existence of with-types means, though, that we still need the allowance machinery here.
include Allowance.Allow_disallow with type (_, _, 'd) sided = 'd t
type (_, _, 'd) sided = 'd tval disallow_right :
('a, 'b, 'l * 'r) sided ->
('a, 'b, 'l * Allowance.disallowed) sidedDisallows on the right.
val disallow_left :
('a, 'b, 'l * 'r) sided ->
('a, 'b, Allowance.disallowed * 'r) sidedDisallows a the left.
val allow_right :
('a, 'b, 'l * Allowance.allowed) sided ->
('a, 'b, 'l * 'r) sidedGeneralizes a right-hand-side allowed to be any allowance.
val allow_left :
('a, 'b, Allowance.allowed * 'r) sided ->
('a, 'b, 'l * 'r) sidedGeneralizes a left-hand-side allowed to be any allowance.
val to_out_jkind_const : Env.t -> 'd t -> Outcometree.out_jkind_constval of_path : Path.t -> (Allowance.allowed * Allowance.allowed) tCreates an abstract jkind, with max with-bounds, from the path.
val equal :
Env.t ->
(Allowance.allowed * Allowance.allowed) t ->
(Allowance.allowed * Allowance.allowed) t ->
boolval of_annotation :
?use_abstract_jkinds:bool ->
context:('l * Allowance.allowed) History.annotation_context ->
Env.t ->
Parsetree.jkind_annotation ->
('l * Allowance.allowed) tval expand_once : Env.t -> (_, 'd) Types.base_and_axes -> 'd t option