SearchSourcetype glob_search_item = | GlobSearchSubPattern of Vernacexpr.glob_search_where
* bool
* Pattern.constr_pattern| GlobSearchString of string| GlobSearchKind of Decls.logical_kind| GlobSearchFilter of Names.GlobRef.t -> booltype glob_search_request = | GlobSearchLiteral of glob_search_item| GlobSearchDisjConj of (bool * glob_search_request) list listtype filter_function =
Names.GlobRef.t ->
Decls.logical_kind option ->
Environ.env ->
Evd.evar_map ->
Constr.constr ->
booltype display_function =
Names.GlobRef.t ->
Decls.logical_kind option ->
Environ.env ->
Evd.evar_map ->
Constr.constr ->
unitCheck whether a reference is blacklisted.
Check whether a reference pertains or not to a set of modules
search_xxx gl pattern modinout searches the hypothesis of the glth goal and the global environment for things matching pattern and satisfying module exclude/include clauses of modinout.
val search_rewrite :
Environ.env ->
Evd.evar_map ->
Pattern.constr_pattern ->
Names.DirPath.t list Vernacexpr.search_restriction ->
display_function ->
unitval search_pattern :
Environ.env ->
Evd.evar_map ->
Pattern.constr_pattern ->
Names.DirPath.t list Vernacexpr.search_restriction ->
display_function ->
unitval search :
Environ.env ->
Evd.evar_map ->
(bool * glob_search_request) list ->
Names.DirPath.t list Vernacexpr.search_restriction ->
display_function ->
unittype search_constraint = | Name_Pattern of Str.regexpWhether the name satisfies a regexp (uses Ocaml Str syntax)
*)| Type_Pattern of Pattern.constr_patternWhether the object type satisfies a pattern
*)| SubType_Pattern of Pattern.constr_patternWhether some subtype of object type satisfies a pattern
*)| In_Module of Names.DirPath.tWhether the object pertains to a module
*)| Include_BlacklistBypass the Search blacklist
*)val interface_search :
Environ.env ->
Evd.evar_map ->
(search_constraint * bool) list ->
Constr.constr coq_object listThis function iterates over all hypothesis of the goal numbered glnum (if present) and all known declarations.
prioritize_search iter iterates over the values of iter (seen as a sequence of declarations), in a relevance order. This requires to perform the entire iteration of iter before starting streaming. So prioritize_search should not be used for low-latency streaming.