| clang 22.0.0git
    | 
Matcher expression parser. More...
#include "clang/ASTMatchers/Dynamic/Parser.h"
| Classes | |
| class | CodeTokenizer | 
| Simple tokenizer for the parser.  More... | |
| class | RegistrySema | 
| Sema implementation that uses the matcher registry to process the tokens.  More... | |
| struct | ScopedContextEntry | 
| class | Sema | 
| Interface to connect the parser with the registry and more.  More... | |
| struct | TokenInfo | 
| Simple structure to hold information for one token from the parser.  More... | |
| Public Types | |
| using | NamedValueMap = llvm::StringMap<VariantValue> | 
| Static Public Member Functions | |
| static std::optional< DynTypedMatcher > | parseMatcherExpression (StringRef &MatcherCode, Sema *S, const NamedValueMap *NamedValues, Diagnostics *Error) | 
| Parse a matcher expression. | |
| static std::optional< DynTypedMatcher > | parseMatcherExpression (StringRef &MatcherCode, Sema *S, Diagnostics *Error) | 
| static std::optional< DynTypedMatcher > | parseMatcherExpression (StringRef &MatcherCode, Diagnostics *Error) | 
| static bool | parseExpression (StringRef &Code, Sema *S, const NamedValueMap *NamedValues, VariantValue *Value, Diagnostics *Error) | 
| Parse an expression. | |
| static bool | parseExpression (StringRef &Code, Sema *S, VariantValue *Value, Diagnostics *Error) | 
| static bool | parseExpression (StringRef &Code, VariantValue *Value, Diagnostics *Error) | 
| static std::vector< MatcherCompletion > | completeExpression (StringRef &Code, unsigned CompletionOffset, Sema *S, const NamedValueMap *NamedValues) | 
| Complete an expression at the given offset. | |
| static std::vector< MatcherCompletion > | completeExpression (StringRef &Code, unsigned CompletionOffset, Sema *S) | 
| static std::vector< MatcherCompletion > | completeExpression (StringRef &Code, unsigned CompletionOffset) | 
| using clang::ast_matchers::dynamic::Parser::NamedValueMap = llvm::StringMap<VariantValue> | 
| 
 | inlinestatic | 
Definition at line 238 of file Parser.h.
References completeExpression().
| 
 | inlinestatic | 
Definition at line 234 of file Parser.h.
References completeExpression().
| 
 | static | 
Complete an expression at the given offset.
| S | The Sema instance that will help the parser construct the matchers. If null, it uses the default registry. | 
| NamedValues | A map of precomputed named values. This provides the dictionary for the <NamedValue> rule of the grammar. If null, it is ignored. | 
Definition at line 895 of file Parser.cpp.
References completeExpression().
Referenced by completeExpression(), completeExpression(), and completeExpression().
| 
 | static | 
Parse an expression.
Parses any expression supported by this parser. In general, the parseMatcherExpression function is a better approach to get a matcher object.
| S | The Sema instance that will help the parser construct the matchers. If null, it uses the default registry. | 
| NamedValues | A map of precomputed named values. This provides the dictionary for the <NamedValue> rule of the grammar. If null, it is ignored. | 
Definition at line 879 of file Parser.cpp.
References parseExpression(), clang::ast_matchers::dynamic::Parser::TokenInfo::TK_Eof, and clang::ast_matchers::dynamic::Parser::TokenInfo::TK_NewLine.
Referenced by parseExpression(), parseExpression(), parseExpression(), and parseMatcherExpression().
| 
 | inlinestatic | 
Definition at line 210 of file Parser.h.
References parseExpression().
| 
 | inlinestatic | 
Definition at line 214 of file Parser.h.
References parseExpression().
| 
 | inlinestatic | 
Definition at line 191 of file Parser.h.
References parseMatcherExpression().
| 
 | static | 
Parse a matcher expression.
| MatcherCode | The matcher expression to parse. | 
| S | The Sema instance that will help the parser construct the matchers. If null, it uses the default registry. | 
| NamedValues | A map of precomputed named values. This provides the dictionary for the <NamedValue> rule of the grammar. If null, it is ignored. | 
Error will contain a description of the error. The caller takes ownership of the DynTypedMatcher object returned. Definition at line 915 of file Parser.cpp.
References parseExpression(), parseMatcherExpression(), and clang::Result.
Referenced by parseMatcherExpression(), parseMatcherExpression(), and parseMatcherExpression().
| 
 | inlinestatic | 
Definition at line 187 of file Parser.h.
References parseMatcherExpression().