Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
SaltoIL.Pattern
Copyright © Inria 2022-2023
get_mutable_flag f fields
returns Immutable
if all fields are immutable, or Mutable
otherwise
module Construct : sig ... end
type t =
| Bot
| Any of Types.type_expr
_
*)| Var of Salto_id.Id.t * Types.type_expr
x
*)| Alias of t * Salto_id.Id.t * Types.type_expr
P as a
*)| Constant of Asttypes.constant
1, 'a', "true", 1.0, 1l, 1L, 1n
*)| Construct of Construct.t * t list
| Lazy of t
lazy P
*)| Plus of t * t * Types.row_desc option
| Compl of t * t
typ of extended patterns
val same_any : t -> bool
same_any p
checks if p is equivalent to the pattern Any
same p1 p2
checks if p1 and p2 are equivalent patterns (assuming p1 and p2 have the same type)
val get_variables : t -> (Salto_id.Id.t * Types.type_expr) list
get_variables p
returns the lists of variable names and types in the pattern p
val free_other_variables : t -> Salto_id.Id.t list -> t
free_other_variables p xs
returns the pattern p where all variables not in xs have been freed (i.e. replaced by Any)