class Parser::RegistrySema
Declaration
class Parser::RegistrySema : public Sema { /* full declaration omitted */ };
Description
Sema implementation that uses the matcher registry to process the tokens.
Declared at: clang/include/clang/ASTMatchers/Dynamic/Parser.h:137
Inherits from: Parser::Sema
Method Overview
- public clang::ast_matchers::dynamic::VariantMatcher actOnMatcherExpression(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 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) const
- public std::vector<ArgKind> getAcceptedCompletionTypes(llvm::ArrayRef<std::pair<MatcherCtor, unsigned int>> Context)
- public std::vector<MatcherCompletion> getMatcherCompletions(llvm::ArrayRef<ArgKind> AcceptedTypes)
- public bool isBuilderMatcher(clang::ast_matchers::dynamic::MatcherCtor Ctor) const
- public llvm::Optional<MatcherCtor> lookupMatcherCtor(llvm::StringRef MatcherName)
- public clang::ASTNodeKind nodeMatcherType(clang::ast_matchers::dynamic::MatcherCtor) const
- public ~RegistrySema()
Inherited from Parser::Sema:
- public actOnMatcherExpression
- public buildMatcherCtor
- public getAcceptedCompletionTypes
- public getMatcherCompletions
- public isBuilderMatcher
- public lookupMatcherCtor
- public nodeMatcherType
Methods
¶clang::ast_matchers::dynamic::VariantMatcher
actOnMatcherExpression(
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)
clang::ast_matchers::dynamic::VariantMatcher
actOnMatcherExpression(
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
Process a matcher expression. All the arguments passed here have already been processed.
Declared at: clang/include/clang/ASTMatchers/Dynamic/Parser.h:144
Parameters
- clang::ast_matchers::dynamic::MatcherCtor Ctor
- A matcher constructor looked up by lookupMatcherCtor.
- clang::ast_matchers::dynamic::SourceRange NameRange
- The location of the name in the matcher source. Useful for error reporting.
- llvm::StringRef BindID
- The ID to use to bind the matcher, or a null \c StringRef if no ID is specified.
- ArrayRef< clang::ast_matchers::dynamic::ParserValue> Args
- The argument list for the matcher.
- clang::ast_matchers::dynamic::Diagnostics* Error
Returns
The matcher objects constructed by the processor, or a null matcher if an error occurred. In that case, \c Error will contain a description of the error.
¶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) const
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) const
Declared at: clang/include/clang/ASTMatchers/Dynamic/Parser.h:158
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
¶std::vector<ArgKind> getAcceptedCompletionTypes(
llvm::ArrayRef<
std::pair<MatcherCtor, unsigned int>>
Context)
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/Parser.h:150
Parameters
- llvm::ArrayRef< std::pair<MatcherCtor, unsigned int>> Context
¶std::vector<MatcherCompletion>
getMatcherCompletions(
llvm::ArrayRef<ArgKind> AcceptedTypes)
std::vector<MatcherCompletion>
getMatcherCompletions(
llvm::ArrayRef<ArgKind> AcceptedTypes)
Description
Compute the list of completions that match any of\p AcceptedTypes.
Declared at: clang/include/clang/ASTMatchers/Dynamic/Parser.h:163
Parameters
- llvm::ArrayRef<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.
¶bool isBuilderMatcher(
clang::ast_matchers::dynamic::MatcherCtor
Ctor) const
bool isBuilderMatcher(
clang::ast_matchers::dynamic::MatcherCtor
Ctor) const
Declared at: clang/include/clang/ASTMatchers/Dynamic/Parser.h:153
Parameters
¶llvm::Optional<MatcherCtor> lookupMatcherCtor(
llvm::StringRef MatcherName)
llvm::Optional<MatcherCtor> lookupMatcherCtor(
llvm::StringRef MatcherName)
Description
Look up a matcher by name.
Declared at: clang/include/clang/ASTMatchers/Dynamic/Parser.h:142
Parameters
- llvm::StringRef MatcherName
- The matcher name found by the parser.
Returns
The matcher constructor, or Optional <MatcherCtor >() if not found.
¶clang::ASTNodeKind nodeMatcherType(
clang::ast_matchers::dynamic::MatcherCtor)
const
clang::ASTNodeKind nodeMatcherType(
clang::ast_matchers::dynamic::MatcherCtor)
const
Declared at: clang/include/clang/ASTMatchers/Dynamic/Parser.h:155
Parameters
¶~RegistrySema()
~RegistrySema()
Declared at: clang/include/clang/ASTMatchers/Dynamic/Parser.h:139