clang 20.0.0git
|
Variadic operator marshaller function. More...
Public Types | |
using | VarOp = DynTypedMatcher::VariadicOperator |
Public Member Functions | |
VariadicOperatorMatcherDescriptor (unsigned MinCount, unsigned MaxCount, VarOp Op, StringRef MatcherName) | |
VariantMatcher | create (SourceRange NameRange, ArrayRef< ParserValue > Args, Diagnostics *Error) const override |
bool | isVariadic () const override |
Returns whether the matcher is variadic. | |
unsigned | getNumArgs () const override |
Returns the number of arguments accepted by the matcher if not variadic. | |
void | getArgKinds (ASTNodeKind ThisKind, unsigned ArgNo, std::vector< ArgKind > &Kinds) const override |
Given that the matcher is being converted to type ThisKind , append the set of argument types accepted for argument ArgNo to ArgKinds . | |
bool | isConvertibleTo (ASTNodeKind Kind, unsigned *Specificity, ASTNodeKind *LeastDerivedKind) const override |
Returns whether this matcher is convertible to the given type. | |
bool | isPolymorphic () const override |
Returns whether the matcher will, given a matcher of any type T, yield a matcher of type T. | |
Public Member Functions inherited from clang::ast_matchers::dynamic::internal::MatcherDescriptor | |
virtual | ~MatcherDescriptor ()=default |
virtual VariantMatcher | create (SourceRange NameRange, ArrayRef< ParserValue > Args, Diagnostics *Error) const =0 |
virtual ASTNodeKind | nodeMatcherType () const |
virtual bool | isBuilderMatcher () const |
virtual std::unique_ptr< MatcherDescriptor > | buildMatcherCtor (SourceRange NameRange, ArrayRef< ParserValue > Args, Diagnostics *Error) const |
virtual bool | isVariadic () const =0 |
Returns whether the matcher is variadic. | |
virtual unsigned | getNumArgs () const =0 |
Returns the number of arguments accepted by the matcher if not variadic. | |
virtual void | getArgKinds (ASTNodeKind ThisKind, unsigned ArgNo, std::vector< ArgKind > &ArgKinds) const =0 |
Given that the matcher is being converted to type ThisKind , append the set of argument types accepted for argument ArgNo to ArgKinds . | |
virtual bool | isConvertibleTo (ASTNodeKind Kind, unsigned *Specificity=nullptr, ASTNodeKind *LeastDerivedKind=nullptr) const =0 |
Returns whether this matcher is convertible to the given type. | |
virtual bool | isPolymorphic () const |
Returns whether the matcher will, given a matcher of any type T, yield a matcher of type T. | |
Variadic operator marshaller function.
Definition at line 871 of file Marshallers.h.
using clang::ast_matchers::dynamic::internal::VariadicOperatorMatcherDescriptor::VarOp = DynTypedMatcher::VariadicOperator |
Definition at line 873 of file Marshallers.h.
|
inline |
Definition at line 875 of file Marshallers.h.
|
inlineoverridevirtual |
Implements clang::ast_matchers::dynamic::internal::MatcherDescriptor.
Definition at line 880 of file Marshallers.h.
References clang::ast_matchers::dynamic::ParserValue::Range, clang::ast_matchers::dynamic::ParserValue::Value, and clang::ast_matchers::dynamic::VariantMatcher::VariadicOperatorMatcher().
|
inlineoverridevirtual |
Given that the matcher is being converted to type ThisKind
, append the set of argument types accepted for argument ArgNo
to ArgKinds
.
Implements clang::ast_matchers::dynamic::internal::MatcherDescriptor.
Definition at line 910 of file Marshallers.h.
References clang::ast_matchers::dynamic::ArgKind::MakeMatcherArg().
|
inlineoverridevirtual |
Returns the number of arguments accepted by the matcher if not variadic.
Implements clang::ast_matchers::dynamic::internal::MatcherDescriptor.
Definition at line 908 of file Marshallers.h.
|
inlineoverridevirtual |
Returns whether this matcher is convertible to the given type.
If it is so convertible, store in *Specificity a value corresponding to the "specificity" of the converted matcher to the given context, and in *LeastDerivedKind the least derived matcher kind which would result in the same matcher overload. Zero specificity indicates that this conversion would produce a trivial matcher that will either always or never match. Such matchers are excluded from code completion results.
Implements clang::ast_matchers::dynamic::internal::MatcherDescriptor.
Definition at line 915 of file Marshallers.h.
References Kind.
|
inlineoverridevirtual |
Returns whether the matcher will, given a matcher of any type T, yield a matcher of type T.
Reimplemented from clang::ast_matchers::dynamic::internal::MatcherDescriptor.
Definition at line 924 of file Marshallers.h.
|
inlineoverridevirtual |
Returns whether the matcher is variadic.
Variadic matchers can take any number of arguments, but they must be of the same type.
Implements clang::ast_matchers::dynamic::internal::MatcherDescriptor.
Definition at line 907 of file Marshallers.h.