clang: clang::ExplicitSpecifier Class Reference (original) (raw)

Store information needed for an explicit specifier. More...

#include "[clang/AST/DeclCXX.h](DeclCXX%5F8h%5Fsource.html)"

Public Member Functions
ExplicitSpecifier ()=default
ExplicitSpecifier (Expr *Expression, ExplicitSpecKind Kind)
ExplicitSpecKind getKind () const
const Expr * getExpr () const
Expr * getExpr ()
bool isSpecified () const
Determine if the declaration had an explicit specifier of any kind.
bool isEquivalent (const ExplicitSpecifier Other) const
Check for equivalence of explicit specifiers.
bool isExplicit () const
Determine whether this specifier is known to correspond to an explicit declaration.
bool isInvalid () const
Determine if the explicit specifier is invalid.
void setKind (ExplicitSpecKind Kind)
void setExpr (Expr *E)
Static Public Member Functions
static ExplicitSpecifier getFromDecl (FunctionDecl *Function)
static const ExplicitSpecifier getFromDecl (const FunctionDecl *Function)
static ExplicitSpecifier Invalid ()

Store information needed for an explicit specifier.

Used by CXXDeductionGuideDecl, CXXConstructorDecl and CXXConversionDecl.

Definition at line 1912 of file DeclCXX.h.

clang::ExplicitSpecifier::ExplicitSpecifier ( ) default

ExplicitSpecifier() [2/2]

getExpr() [1/2]

Expr * clang::ExplicitSpecifier::getExpr ( ) inline

getExpr() [2/2]

const Expr * clang::ExplicitSpecifier::getExpr ( ) const inline

Definition at line 1921 of file DeclCXX.h.

Referenced by addExplicitSpecifier(), clang::ast_matchers::AST_MATCHER_P(), clang::CXXConstructorDecl::Create(), DiagnoseFailedExplicitSpec(), clang::DeclSpec::getExplicitSpecRange(), clang::Sema::instantiateExplicitSpecifier(), instantiateExplicitSpecifierDeferred(), isEquivalent(), printExplicitSpecifier(), clang::CXXConstructorDecl::setExplicitSpecifier(), clang::DeclSpec::setFunctionSpecExplicit(), and clang::Sema::tryResolveExplicitSpecifier().

getFromDecl() [1/2]

getFromDecl() [2/2]

getKind()

Invalid()

isEquivalent()

isExplicit()

bool clang::ExplicitSpecifier::isExplicit ( ) const inline

isInvalid()

bool clang::ExplicitSpecifier::isInvalid ( ) const inline

isSpecified()

bool clang::ExplicitSpecifier::isSpecified ( ) const inline

setExpr()

void clang::ExplicitSpecifier::setExpr ( Expr * E) inline

setKind()


The documentation for this class was generated from the following files: