`sig val to_string : OpamTypes.filter -> string val fold_down_left : ('a -> OpamTypes.filter -> 'a) -> 'a -> OpamTypes.filter -> 'a val variables : OpamTypes.filter -> OpamTypes.full_variable list type env = OpamTypes.full_variable -> OpamTypes.variable_contents option type fident = OpamTypes.name list * OpamTypes.variable * (string * string) option val expand_string : OpamFilter.env -> string -> string val eval : ?default:OpamTypes.variable_contents -> OpamFilter.env -> OpamTypes.filter -> OpamTypes.variable_contents val eval_to_bool : ?default:bool -> OpamFilter.env -> OpamTypes.filter -> bool val opt_eval_to_bool : OpamFilter.env -> OpamTypes.filter option -> bool val eval_to_string : ?default:string -> OpamFilter.env -> OpamTypes.filter -> string val ident_of_var : OpamTypes.full_variable -> OpamFilter.fident val ident_value : ?default:OpamTypes.variable_contents -> OpamFilter.env -> OpamFilter.fident -> OpamTypes.variable_contents val ident_string : ?default:string -> OpamFilter.env -> OpamFilter.fident -> string val ident_bool : ?default:bool -> OpamFilter.env -> OpamFilter.fident -> bool val expand_interpolations_in_file : OpamFilter.env -> OpamTypes.basename -> unit val commands : OpamFilter.env -> OpamTypes.command list -> string list list val single_command : OpamFilter.env -> OpamTypes.arg list -> string list val commands_variables : OpamTypes.command list -> OpamTypes.full_variable list end`