|
bool | clang::ast_matchers::dynamic::internal::isRetKindConvertibleTo (ArrayRef< ASTNodeKind > RetKinds, ASTNodeKind Kind, unsigned *Specificity, ASTNodeKind *LeastDerivedKind) |
|
template<class PolyMatcher > |
static void | clang::ast_matchers::dynamic::internal::mergePolyMatchers (const PolyMatcher &Poly, std::vector< DynTypedMatcher > &Out, ast_matchers::internal::EmptyTypeList) |
| Helper methods to extract and merge all possible typed matchers out of the polymorphic object.
|
|
template<class PolyMatcher , class TypeList > |
static void | clang::ast_matchers::dynamic::internal::mergePolyMatchers (const PolyMatcher &Poly, std::vector< DynTypedMatcher > &Out, TypeList) |
|
VariantMatcher | clang::ast_matchers::dynamic::internal::outvalueToVariantMatcher (const DynTypedMatcher &Matcher) |
| Convert the return values of the functions into a VariantMatcher.
|
|
template<typename T > |
static VariantMatcher | clang::ast_matchers::dynamic::internal::outvalueToVariantMatcher (const T &PolyMatcher, typename T::ReturnTypes *=nullptr) |
|
template<typename T > |
void | clang::ast_matchers::dynamic::internal::buildReturnTypeVectorFromTypeList (std::vector< ASTNodeKind > &RetTypes) |
|
template<> |
void | clang::ast_matchers::dynamic::internal::buildReturnTypeVectorFromTypeList< ast_matchers::internal::EmptyTypeList > (std::vector< ASTNodeKind > &RetTypes) |
|
template<typename ResultT , typename ArgT , ResultT(*)(ArrayRef< const ArgT * >) Func> |
VariantMatcher | clang::ast_matchers::dynamic::internal::variadicMatcherDescriptor (StringRef MatcherName, SourceRange NameRange, ArrayRef< ParserValue > Args, Diagnostics *Error) |
| Variadic marshaller function.
|
|
template<typename ReturnType > |
static VariantMatcher | clang::ast_matchers::dynamic::internal::matcherMarshall0 (void(*Func)(), StringRef MatcherName, SourceRange NameRange, ArrayRef< ParserValue > Args, Diagnostics *Error) |
| 0-arg marshaller function.
|
|
template<typename ReturnType , typename ArgType1 > |
static VariantMatcher | clang::ast_matchers::dynamic::internal::matcherMarshall1 (void(*Func)(), StringRef MatcherName, SourceRange NameRange, ArrayRef< ParserValue > Args, Diagnostics *Error) |
| 1-arg marshaller function.
|
|
template<typename ReturnType , typename ArgType1 , typename ArgType2 > |
static VariantMatcher | clang::ast_matchers::dynamic::internal::matcherMarshall2 (void(*Func)(), StringRef MatcherName, SourceRange NameRange, ArrayRef< ParserValue > Args, Diagnostics *Error) |
| 2-arg marshaller function.
|
|
template<typename ReturnType > |
std::unique_ptr< MatcherDescriptor > | clang::ast_matchers::dynamic::internal::makeMatcherAutoMarshall (ReturnType(*Func)(), StringRef MatcherName) |
| Helper functions to select the appropriate marshaller functions.
|
|
template<typename ReturnType , typename ArgType1 > |
std::unique_ptr< MatcherDescriptor > | clang::ast_matchers::dynamic::internal::makeMatcherAutoMarshall (ReturnType(*Func)(ArgType1), StringRef MatcherName) |
| 1-arg overload
|
|
template<typename ReturnType , typename ArgType1 , typename ArgType2 > |
std::unique_ptr< MatcherDescriptor > | clang::ast_matchers::dynamic::internal::makeMatcherAutoMarshall (ReturnType(*Func)(ArgType1, ArgType2), StringRef MatcherName) |
| 2-arg overload
|
|
template<typename ReturnType > |
std::unique_ptr< MatcherDescriptor > | clang::ast_matchers::dynamic::internal::makeMatcherRegexMarshall (ReturnType(*FuncFlags)(llvm::StringRef, llvm::Regex::RegexFlags), ReturnType(*Func)(llvm::StringRef)) |
|
template<typename ResultT , typename ArgT , ResultT(*)(ArrayRef< const ArgT * >) Func> |
std::unique_ptr< MatcherDescriptor > | clang::ast_matchers::dynamic::internal::makeMatcherAutoMarshall (ast_matchers::internal::VariadicFunction< ResultT, ArgT, Func > VarFunc, StringRef MatcherName) |
| Variadic overload.
|
|
template<typename BaseT , typename DerivedT > |
std::unique_ptr< MatcherDescriptor > | clang::ast_matchers::dynamic::internal::makeMatcherAutoMarshall (ast_matchers::internal::VariadicDynCastAllOfMatcher< BaseT, DerivedT > VarFunc, StringRef MatcherName) |
| Overload for VariadicDynCastAllOfMatchers.
|
|
template<template< typename ToArg, typename FromArg > class ArgumentAdapterT, typename FromTypes , typename ToTypes > |
std::unique_ptr< MatcherDescriptor > | clang::ast_matchers::dynamic::internal::makeMatcherAutoMarshall (ast_matchers::internal::ArgumentAdaptingMatcherFunc< ArgumentAdapterT, FromTypes, ToTypes >, StringRef MatcherName) |
| Argument adaptative overload.
|
|
template<unsigned MinCount, unsigned MaxCount> |
std::unique_ptr< MatcherDescriptor > | clang::ast_matchers::dynamic::internal::makeMatcherAutoMarshall (ast_matchers::internal::VariadicOperatorMatcherFunc< MinCount, MaxCount > Func, StringRef MatcherName) |
| Variadic operator overload.
|
|
template<typename CladeType , typename... MatcherT> |
std::unique_ptr< MatcherDescriptor > | clang::ast_matchers::dynamic::internal::makeMatcherAutoMarshall (ast_matchers::internal::MapAnyOfMatcherImpl< CladeType, MatcherT... >, StringRef MatcherName) |
|
Functions templates and classes to wrap matcher construct functions.
A collection of template function and classes that provide a generic marshalling layer on top of matcher construct functions. These are used by the registry to export all marshaller constructors with the same generic interface.
Definition in file Marshallers.h.