class Registry
Declaration
class Registry { /* full declaration omitted */ };
Declared at: clang/include/clang/ASTMatchers/Dynamic/Registry.h:82
Method Overview
- public Registry()
- public static internal::MatcherDescriptorPtr buildMatcherCtor(clang::ast_matchers::dynamic::MatcherCtor, clang::ast_matchers::dynamic::SourceRange NameRange, ArrayRef<clang::ast_matchers::dynamic::ParserValue> Args, clang::ast_matchers::dynamic::Diagnostics * Error)
- public static clang::ast_matchers::dynamic::VariantMatcher constructBoundMatcher(clang::ast_matchers::dynamic::MatcherCtor Ctor, clang::ast_matchers::dynamic::SourceRange NameRange, llvm::StringRef BindID, ArrayRef<clang::ast_matchers::dynamic::ParserValue> Args, clang::ast_matchers::dynamic::Diagnostics * Error)
- public static clang::ast_matchers::dynamic::VariantMatcher constructMatcher(clang::ast_matchers::dynamic::MatcherCtor Ctor, clang::ast_matchers::dynamic::SourceRange NameRange, ArrayRef<clang::ast_matchers::dynamic::ParserValue> Args, clang::ast_matchers::dynamic::Diagnostics * Error)
- public static std::vector<ArgKind> getAcceptedCompletionTypes(llvm::ArrayRef<std::pair<MatcherCtor, unsigned int>> Context)
- public static std::vector<MatcherCompletion> getMatcherCompletions(ArrayRef<clang::ast_matchers::dynamic::ArgKind> AcceptedTypes)
- public static bool isBuilderMatcher(clang::ast_matchers::dynamic::MatcherCtor Ctor)
- public static llvm::Optional<MatcherCtor> lookupMatcherCtor(llvm::StringRef MatcherName)
- public static clang::ASTNodeKind nodeMatcherType(clang::ast_matchers::dynamic::MatcherCtor)
Methods
¶Registry()
Registry()
Declared at: clang/include/clang/ASTMatchers/Dynamic/Registry.h:84
¶static internal::MatcherDescriptorPtr
buildMatcherCtor(
clang::ast_matchers::dynamic::MatcherCtor,
clang::ast_matchers::dynamic::SourceRange
NameRange,
ArrayRef<
clang::ast_matchers::dynamic::ParserValue>
Args,
clang::ast_matchers::dynamic::Diagnostics*
Error)
static internal::MatcherDescriptorPtr
buildMatcherCtor(
clang::ast_matchers::dynamic::MatcherCtor,
clang::ast_matchers::dynamic::SourceRange
NameRange,
ArrayRef<
clang::ast_matchers::dynamic::ParserValue>
Args,
clang::ast_matchers::dynamic::Diagnostics*
Error)
Declared at: clang/include/clang/ASTMatchers/Dynamic/Registry.h:91
Parameters
- clang::ast_matchers::dynamic::MatcherCtor
- clang::ast_matchers::dynamic::SourceRange NameRange
- ArrayRef< clang::ast_matchers::dynamic::ParserValue> Args
- clang::ast_matchers::dynamic::Diagnostics* Error
¶static clang::ast_matchers::dynamic::
VariantMatcher
constructBoundMatcher(
clang::ast_matchers::dynamic::MatcherCtor
Ctor,
clang::ast_matchers::dynamic::SourceRange
NameRange,
llvm::StringRef BindID,
ArrayRef<clang::ast_matchers::dynamic::
ParserValue> Args,
clang::ast_matchers::dynamic::Diagnostics*
Error)
static clang::ast_matchers::dynamic::
VariantMatcher
constructBoundMatcher(
clang::ast_matchers::dynamic::MatcherCtor
Ctor,
clang::ast_matchers::dynamic::SourceRange
NameRange,
llvm::StringRef BindID,
ArrayRef<clang::ast_matchers::dynamic::
ParserValue> Args,
clang::ast_matchers::dynamic::Diagnostics*
Error)
Description
Construct a matcher from the registry and bind it. Similar the \c constructMatcher() above, but it then tries to bind the matcher to the specified \c BindID. If the matcher is not bindable, it sets an error in \c Error and returns a null matcher.
Declared at: clang/include/clang/ASTMatchers/Dynamic/Registry.h:149
Parameters
- clang::ast_matchers::dynamic::MatcherCtor Ctor
- clang::ast_matchers::dynamic::SourceRange NameRange
- llvm::StringRef BindID
- ArrayRef< clang::ast_matchers::dynamic::ParserValue> Args
- clang::ast_matchers::dynamic::Diagnostics* Error
¶static clang::ast_matchers::dynamic::
VariantMatcher
constructMatcher(
clang::ast_matchers::dynamic::MatcherCtor
Ctor,
clang::ast_matchers::dynamic::SourceRange
NameRange,
ArrayRef<clang::ast_matchers::dynamic::
ParserValue> Args,
clang::ast_matchers::dynamic::Diagnostics*
Error)
static clang::ast_matchers::dynamic::
VariantMatcher
constructMatcher(
clang::ast_matchers::dynamic::MatcherCtor
Ctor,
clang::ast_matchers::dynamic::SourceRange
NameRange,
ArrayRef<clang::ast_matchers::dynamic::
ParserValue> Args,
clang::ast_matchers::dynamic::Diagnostics*
Error)
Description
Construct a matcher from the registry.
Declared at: clang/include/clang/ASTMatchers/Dynamic/Registry.h:138
Parameters
- clang::ast_matchers::dynamic::MatcherCtor Ctor
- The matcher constructor to instantiate.
- clang::ast_matchers::dynamic::SourceRange NameRange
- The location of the name in the matcher source. Useful for error reporting.
- ArrayRef< clang::ast_matchers::dynamic::ParserValue> Args
- The argument list for the matcher. The number and types of the values must be valid for the matcher requested. Otherwise, the function will return an error.
- clang::ast_matchers::dynamic::Diagnostics* Error
Returns
The matcher object constructed if no error was found. A null matcher if the number of arguments or argument types do not match the signature. In that case \c Error will contain the description of the error.
¶static std::vector<ArgKind>
getAcceptedCompletionTypes(
llvm::ArrayRef<
std::pair<MatcherCtor, unsigned int>>
Context)
static std::vector<ArgKind>
getAcceptedCompletionTypes(
llvm::ArrayRef<
std::pair<MatcherCtor, unsigned int>>
Context)
Description
Compute the list of completion types for \p Context. Each element of \p Context represents a matcher invocation, going from outermost to innermost. Elements are pairs consisting of a reference to the matcher constructor and the index of the next element in the argument list of that matcher (or for the last element, the index of the completion point in the argument list). An empty list requests completion for the root matcher.
Declared at: clang/include/clang/ASTMatchers/Dynamic/Registry.h:108
Parameters
- llvm::ArrayRef< std::pair<MatcherCtor, unsigned int>> Context
¶static std::vector<MatcherCompletion>
getMatcherCompletions(
ArrayRef<
clang::ast_matchers::dynamic::ArgKind>
AcceptedTypes)
static std::vector<MatcherCompletion>
getMatcherCompletions(
ArrayRef<
clang::ast_matchers::dynamic::ArgKind>
AcceptedTypes)
Description
Compute the list of completions that match any of\p AcceptedTypes.
Declared at: clang/include/clang/ASTMatchers/Dynamic/Registry.h:121
Parameters
- ArrayRef<clang::ast_matchers::dynamic::ArgKind> AcceptedTypes
- All types accepted for this completion.
Returns
All completions for the specified types. Completions should be valid when used in \c lookupMatcherCtor(). The matcher constructed from the return of \c lookupMatcherCtor() should be convertible to some type in \p AcceptedTypes.
¶static bool isBuilderMatcher(
clang::ast_matchers::dynamic::MatcherCtor
Ctor)
static bool isBuilderMatcher(
clang::ast_matchers::dynamic::MatcherCtor
Ctor)
Declared at: clang/include/clang/ASTMatchers/Dynamic/Registry.h:88
Parameters
¶static llvm::Optional<MatcherCtor>
lookupMatcherCtor(llvm::StringRef MatcherName)
static llvm::Optional<MatcherCtor>
lookupMatcherCtor(llvm::StringRef MatcherName)
Description
Look up a matcher in the registry by name,
Declared at: clang/include/clang/ASTMatchers/Dynamic/Registry.h:98
Parameters
- llvm::StringRef MatcherName
Returns
An opaque value which may be used to refer to the matcher constructor, or Optional <MatcherCtor >() if not found.
¶static clang::ASTNodeKind nodeMatcherType(
clang::ast_matchers::dynamic::MatcherCtor)
static clang::ASTNodeKind nodeMatcherType(
clang::ast_matchers::dynamic::MatcherCtor)
Declared at: clang/include/clang/ASTMatchers/Dynamic/Registry.h:86