clang 22.0.0git
clang::detail Namespace Reference

Classes

struct  AvailabilityData
 Describes the trailing object for Availability attribute in ParsedAttr. More...
class  CXXDeductionGuideNameExtra
 Contains extra information for the name of a C++ deduction guide. More...
class  CXXLiteralOperatorIdName
 Contains the actual identifier that makes up the name of a C++ literal operator. More...
class  CXXOperatorIdName
 Contains extra information for the name of an overloaded operator in C++, such as "operator+. More...
class  CXXSpecialNameExtra
 CXXSpecialNameExtra records the type associated with one of the "special" kinds of declaration names in C++, e.g., constructors, destructors, and conversion functions. More...
class  DeclarationNameExtra
 DeclarationNameExtra is used as a base of various uncommon special names. More...
struct  has_same_member_pointer_type
struct  has_same_member_pointer_type< R(T::*)(P...), R(U::*)(P...)>
class  MacroExpansionRangeRecorder
struct  PropertyData
class  SarifArtifact
 Since every clang artifact MUST have a location (there being no nested artifacts), the creation method SarifArtifact::create requires a SarifArtifactLocation object. More...
class  SarifArtifactLocation
struct  SearchDirIteratorImpl
 Forward iterator over the search directories of HeaderSearch. More...
struct  TypeTagForDatatypeData

Typedefs

template<bool Const, typename T>
using Qualified = std::conditional_t<Const, const T, T>

Enumerations

enum  AvailabilitySlot { IntroducedSlot , DeprecatedSlot , ObsoletedSlot , NumAvailabilitySlots }

Functions

ExprIgnoreExprNodesImpl (Expr *E)
 Given an expression E and functions Fn_1,...,Fn_n : Expr * -> Expr *, Return Fn_n(...(Fn_1(E)))
template<typename FnTy, typename... FnTys>
ExprIgnoreExprNodesImpl (Expr *E, FnTy &&Fn, FnTys &&... Fns)
template<typename FirstMethodPtrTy, typename SecondMethodPtrTy>
LLVM_ATTRIBUTE_ALWAYS_INLINE LLVM_ATTRIBUTE_NODEBUG auto isSameMethod (FirstMethodPtrTy FirstMethodPtr, SecondMethodPtrTy SecondMethodPtr) -> bool
 Returns true if and only if FirstMethodPtr and SecondMethodPtr are pointers to the same non-static member function.

Typedef Documentation

◆ Qualified

template<bool Const, typename T>
using clang::detail::Qualified = std::conditional_t<Const, const T, T>

Definition at line 172 of file HeaderSearch.h.

Enumeration Type Documentation

◆ AvailabilitySlot

Enumerator
IntroducedSlot 
DeprecatedSlot 
ObsoletedSlot 
NumAvailabilitySlots 

Definition at line 62 of file ParsedAttr.h.

Function Documentation

◆ IgnoreExprNodesImpl() [1/2]

Expr * clang::detail::IgnoreExprNodesImpl ( Expr * E)
inline

Given an expression E and functions Fn_1,...,Fn_n : Expr * -> Expr *, Return Fn_n(...(Fn_1(E)))

Definition at line 23 of file IgnoreExpr.h.

Referenced by clang::IgnoreExprNodes(), and IgnoreExprNodesImpl().

◆ IgnoreExprNodesImpl() [2/2]

template<typename FnTy, typename... FnTys>
Expr * clang::detail::IgnoreExprNodesImpl ( Expr * E,
FnTy && Fn,
FnTys &&... Fns )

Definition at line 25 of file IgnoreExpr.h.

References IgnoreExprNodesImpl().

◆ isSameMethod()

template<typename FirstMethodPtrTy, typename SecondMethodPtrTy>
LLVM_ATTRIBUTE_ALWAYS_INLINE LLVM_ATTRIBUTE_NODEBUG auto clang::detail::isSameMethod ( FirstMethodPtrTy FirstMethodPtr,
SecondMethodPtrTy SecondMethodPtr ) -> bool

Returns true if and only if FirstMethodPtr and SecondMethodPtr are pointers to the same non-static member function.

Definition at line 80 of file RecursiveASTVisitor.h.