Module Flambda2_identifiers.Name
The sum type holding a Variable or a Symbol. The injection functions into the sum type are the identity.
include module type of struct include Int_ids.Name end
type t = private Flambda2_algorithms.Table_by_int_id.Id.tinclude Flambda2_algorithms.Container_types.S_plus_iterator with type t := t
module T = Int_ids.Name.Tinclude Flambda2_algorithms.Container_types_intf.Thing with type t := T.t
include Hashtbl.HashedType with type t := T.t
val hash : T.t -> intA hashing function on keys. It must be such that if two keys are equal according to equal, then they have identical hash values as computed by hash. Examples: suitable (equal, hash) pairs for arbitrary key types include
- (
(=),hash) for comparing objects by structure (provided objects do not contain floats) - (
(fun x y -> compare x y = 0),hash) for comparing objects by structure and handlingStdlib.nancorrectly - (
(==),hash) for comparing objects by physical equality (e.g. for mutable or cyclic objects).
include Map.OrderedType with type t := T.t
A total ordering function over the keys. This is a two-argument function f such that f e1 e2 is zero if the keys e1 and e2 are equal, f e1 e2 is strictly negative if e1 is smaller than e2, and f e1 e2 is strictly positive if e1 is greater than e2. Example: a suitable ordering function is the generic structural comparison function Stdlib.compare.
val print : Format.formatter -> T.t -> unitmodule Set = Int_ids.Name.Setmodule Map = Int_ids.Name.Mapval var : Int_ids.Variable.t -> tval var_set : Int_ids.Variable.Set.t -> Set.tval var_map : 'a Int_ids.Variable.Map.t -> 'a Map.tval symbol : Int_ids.Symbol.t -> tval pattern_match :
t ->
var:(Int_ids.Variable.t -> 'a) ->
symbol:(Int_ids.Symbol.t -> 'a) ->
'aval set_of_var_set : Flambda2_identifiers.Variable.Set.t -> Set.tval set_of_symbol_set : Flambda2_identifiers.Symbol.Set.t -> Set.tval set_to_var_set : Set.t -> Flambda2_identifiers.Variable.Set.tval set_to_symbol_set : Set.t -> Flambda2_identifiers.Symbol.Set.tval is_var : t -> boolval is_symbol : t -> boolval compilation_unit : t -> Compilation_unit.tval is_imported : t -> boolval must_be_var_opt : t -> Variable.t optionmodule Pair : sig ... end