sig
module Make :
functor (Ast : Sig.Camlp4Ast) ->
sig
module S :
sig
type elt = string
type t
val empty : t
val is_empty : t -> bool
val mem : elt -> t -> bool
val add : elt -> t -> t
val singleton : elt -> t
val remove : elt -> t -> t
val union : t -> t -> t
val inter : t -> t -> t
val diff : t -> t -> t
val compare : t -> t -> int
val equal : t -> t -> bool
val subset : t -> t -> bool
val iter : (elt -> unit) -> t -> unit
val fold : (elt -> 'a -> 'a) -> t -> 'a -> 'a
val for_all : (elt -> bool) -> t -> bool
val exists : (elt -> bool) -> t -> bool
val filter : (elt -> bool) -> t -> t
val partition : (elt -> bool) -> t -> t * t
val cardinal : t -> int
val elements : t -> elt list
val min_elt : t -> elt
val max_elt : t -> elt
val choose : t -> elt
val split : elt -> t -> t * bool * t
end
val fold_binding_vars :
(string -> 'a -> 'a) -> Ast.binding -> 'a -> 'a
class ['a] c_fold_pattern_vars :
(string -> 'a -> 'a) ->
'a ->
object ('b)
val acc : 'a
method acc : 'a
method binding : Ast.binding -> 'b
method class_expr : Ast.class_expr -> 'b
method class_sig_item : Ast.class_sig_item -> 'b
method class_str_item : Ast.class_str_item -> 'b
method class_type : Ast.class_type -> 'b
method ctyp : Ast.ctyp -> 'b
method direction_flag : Ast.direction_flag -> 'b
method expr : Ast.expr -> 'b
method ident : Ast.ident -> 'b
method list : ('b -> 'c -> 'b) -> 'c list -> 'b
method loc : Ast.loc -> 'b
method match_case : Ast.match_case -> 'b
method meta_bool : Ast.meta_bool -> 'b
method meta_list : ('b -> 'd -> 'b) -> 'd Ast.meta_list -> 'b
method meta_option : ('b -> 'e -> 'b) -> 'e Ast.meta_option -> 'b
method module_binding : Ast.module_binding -> 'b
method module_expr : Ast.module_expr -> 'b
method module_type : Ast.module_type -> 'b
method mutable_flag : Ast.mutable_flag -> 'b
method override_flag : Ast.override_flag -> 'b
method patt : Ast.patt -> 'b
method private_flag : Ast.private_flag -> 'b
method rec_binding : Ast.rec_binding -> 'b
method rec_flag : Ast.rec_flag -> 'b
method row_var_flag : Ast.row_var_flag -> 'b
method sig_item : Ast.sig_item -> 'b
method str_item : Ast.str_item -> 'b
method string : string -> 'b
method unknown : 'f -> 'b
method virtual_flag : Ast.virtual_flag -> 'b
method with_constr : Ast.with_constr -> 'b
end
val fold_pattern_vars : (string -> 'a -> 'a) -> Ast.patt -> 'a -> 'a
class ['a] fold_free_vars :
(string -> 'a -> 'a) ->
?env_init:Camlp4.Struct.??.Make.S.t ->
'a ->
object ('b)
val env : Camlp4.Struct.??.Make.S.t
val free : 'a
method add_atom : string -> 'b
method add_binding : Ast.binding -> 'b
method add_patt : Ast.patt -> 'b
method binding : Ast.binding -> 'b
method class_expr : Ast.class_expr -> 'b
method class_sig_item : Ast.class_sig_item -> 'b
method class_str_item : Ast.class_str_item -> 'b
method class_type : Ast.class_type -> 'b
method ctyp : Ast.ctyp -> 'b
method direction_flag : Ast.direction_flag -> 'b
method expr : Ast.expr -> 'b
method free : 'a
method ident : Ast.ident -> 'b
method list : ('b -> 'c -> 'b) -> 'c list -> 'b
method loc : Ast.loc -> 'b
method match_case : Ast.match_case -> 'b
method meta_bool : Ast.meta_bool -> 'b
method meta_list : ('b -> 'd -> 'b) -> 'd Ast.meta_list -> 'b
method meta_option : ('b -> 'e -> 'b) -> 'e Ast.meta_option -> 'b
method module_binding : Ast.module_binding -> 'b
method module_expr : Ast.module_expr -> 'b
method module_type : Ast.module_type -> 'b
method mutable_flag : Ast.mutable_flag -> 'b
method override_flag : Ast.override_flag -> 'b
method patt : Ast.patt -> 'b
method private_flag : Ast.private_flag -> 'b
method rec_binding : Ast.rec_binding -> 'b
method rec_flag : Ast.rec_flag -> 'b
method row_var_flag : Ast.row_var_flag -> 'b
method set_env : Camlp4.Struct.??.Make.S.t -> 'b
method sig_item : Ast.sig_item -> 'b
method str_item : Ast.str_item -> 'b
method string : string -> 'b
method unknown : 'f -> 'b
method virtual_flag : Ast.virtual_flag -> 'b
method with_constr : Ast.with_constr -> 'b
end
val free_vars :
Camlp4.Struct.??.Make.S.t -> Ast.expr -> Camlp4.Struct.??.Make.S.t
end
end