class CXXInheritedCtorInitExpr
Declaration
class CXXInheritedCtorInitExpr : public Expr { /* full declaration omitted */ };
Description
Represents a call to an inherited base class constructor from an inheriting constructor. This call implicitly forwards the arguments from the enclosing context (an inheriting constructor) to the specified inherited base class constructor.
Declared at: clang/include/clang/AST/ExprCXX.h:1651
Inherits from: Expr
Member Variables
- private clang::CXXConstructorDecl* Constructor = nullptr
- private clang::SourceLocation Loc
- The location of the using declaration.
- private unsigned int ConstructsVirtualBase
- Whether this is the construction of a virtual base.
- private unsigned int InheritedFromVirtualBase
- Whether the constructor is inherited from a virtual base class of the class that we construct.
Inherited from Stmt:
Method Overview
- public CXXInheritedCtorInitExpr(clang::SourceLocation Loc, clang::QualType T, clang::CXXConstructorDecl * Ctor, bool ConstructsVirtualBase, bool InheritedFromVirtualBase)
- public CXXInheritedCtorInitExpr(clang::Stmt::EmptyShell Empty)
- public clang::Stmt::child_range children()
- public clang::Stmt::const_child_range children() const
- public static bool classof(const clang::Stmt * T)
- public bool constructsVBase() const
- public clang::SourceLocation getBeginLoc() const
- public CXXConstructExpr::ConstructionKind getConstructionKind() const
- public clang::CXXConstructorDecl * getConstructor() const
- public clang::SourceLocation getEndLoc() const
- public clang::SourceLocation getLocation() const
- public bool inheritedFromVBase() const
Inherited from Expr:
- public Classify
- public ClassifyLValue
- public ClassifyModifiable
- public EvaluateAsBooleanCondition
- public EvaluateAsConstantExpr
- public EvaluateAsFixedPoint
- public EvaluateAsFloat
- public EvaluateAsInitializer
- public EvaluateAsInt
- public EvaluateAsLValue
- public EvaluateAsRValue
- public EvaluateForOverflow
- public EvaluateKnownConstInt
- public EvaluateKnownConstIntCheckOverflow
- public EvaluateWithSubstitution
- public HasSideEffects
- public IgnoreCasts
- public IgnoreCasts
- public IgnoreConversionOperatorSingleStep
- public IgnoreConversionOperatorSingleStep
- public IgnoreImpCasts
- public IgnoreImpCasts
- public IgnoreImplicit
- public IgnoreImplicit
- public IgnoreImplicitAsWritten
- public IgnoreImplicitAsWritten
- public IgnoreParenBaseCasts
- public IgnoreParenBaseCasts
- public IgnoreParenCasts
- public IgnoreParenCasts
- public IgnoreParenImpCasts
- public IgnoreParenImpCasts
- public IgnoreParenLValueCasts
- public IgnoreParenLValueCasts
- public IgnoreParenNoopCasts
- public IgnoreParenNoopCasts
- public IgnoreParens
- public IgnoreParens
- public IgnoreUnlessSpelledInSource
- public IgnoreUnlessSpelledInSource
- public classof
- public containsErrors
- public containsUnexpandedParameterPack
- public findBoundMemberType
- public getAsBuiltinConstantDeclRef
- public getBestDynamicClassType
- public getBestDynamicClassTypeExpr
- public getDependence
- public getExprLoc
- public getFPFeaturesInEffect
- public getIntegerConstantExpr
- public getObjCProperty
- public getObjectKind
- public getReferencedDeclOfCallee
- public getReferencedDeclOfCallee
- public getSourceBitField
- public getSourceBitField
- public getType
- public getValueKind
- public getValueKindForType
- public hasAnyTypeDependentArguments
- public hasNonTrivialCall
- public hasPlaceholderType
- public hasPlaceholderType
- public isBoundMemberFunction
- public isCXX11ConstantExpr
- public isCXX98IntegralConstantExpr
- public isConstantInitializer
- public isDefaultArgument
- public isEvaluatable
- public isGLValue
- public isImplicitCXXThis
- public isInstantiationDependent
- public isIntegerConstantExpr
- public isKnownToHaveBooleanValue
- public isLValue
- public isModifiableLvalue
- public isNullPointerConstant
- public isOBJCGCCandidate
- public isObjCSelfExpr
- public isOrdinaryOrBitFieldObject
- public isPRValue
- public isPotentialConstantExpr
- public isPotentialConstantExprUnevaluated
- public isReadIfDiscardedInCPlusPlus11
- public isSameComparisonOperand
- public isTemporaryObject
- public isTypeDependent
- public isUnusedResultAWarning
- public isValueDependent
- public isXValue
- public refersToBitField
- public refersToGlobalRegisterVar
- public refersToMatrixElement
- public refersToVectorElement
- protected setDependence
- public setObjectKind
- public setType
- public setValueKind
- public skipRValueSubobjectAdjustments
- public skipRValueSubobjectAdjustments
- public tryEvaluateObjectSize
- public tryEvaluateStrLen
Inherited from ValueStmt:
Inherited from Stmt:
- public EnableStatistics
- public IgnoreContainers
- public IgnoreContainers
- public PrintStats
- public ProcessODRHash
- public Profile
- public addStmtClass
- public child_begin
- public child_begin
- public child_end
- public child_end
- public children
- public children
- public determineLikelihoodConflict
- public dump
- public dump
- public dumpColor
- public dumpPretty
- public getBeginLoc
- public getEndLoc
- public getID
- public getLikelihood
- public getLikelihood
- public getLikelihood
- public getLikelihoodAttr
- public getSourceRange
- public getStmtClass
- public getStmtClassName
- public printJson
- public printPretty
- public printPrettyControlled
- public stripLabelLikeStatements
- public stripLabelLikeStatements
- public viewAST
Methods
¶CXXInheritedCtorInitExpr(
clang::SourceLocation Loc,
clang::QualType T,
clang::CXXConstructorDecl* Ctor,
bool ConstructsVirtualBase,
bool InheritedFromVirtualBase)
CXXInheritedCtorInitExpr(
clang::SourceLocation Loc,
clang::QualType T,
clang::CXXConstructorDecl* Ctor,
bool ConstructsVirtualBase,
bool InheritedFromVirtualBase)
Description
Construct a C++ inheriting construction expression.
Declared at: clang/include/clang/AST/ExprCXX.h:1669
Parameters
- clang::SourceLocation Loc
- clang::QualType T
- clang::CXXConstructorDecl* Ctor
- bool ConstructsVirtualBase
- bool InheritedFromVirtualBase
¶CXXInheritedCtorInitExpr(
clang::Stmt::EmptyShell Empty)
CXXInheritedCtorInitExpr(
clang::Stmt::EmptyShell Empty)
Description
Construct an empty C++ inheriting construction expression.
Declared at: clang/include/clang/AST/ExprCXX.h:1681
Parameters
- clang::Stmt::EmptyShell Empty
¶clang::Stmt::child_range children()
clang::Stmt::child_range children()
Declared at: clang/include/clang/AST/ExprCXX.h:1710
¶clang::Stmt::const_child_range children() const
clang::Stmt::const_child_range children() const
Declared at: clang/include/clang/AST/ExprCXX.h:1714
¶static bool classof(const clang::Stmt* T)
static bool classof(const clang::Stmt* T)
Declared at: clang/include/clang/AST/ExprCXX.h:1706
Parameters
- const clang::Stmt* T
¶bool constructsVBase() const
bool constructsVBase() const
Description
Determine whether this constructor is actually constructing a base class (rather than a complete object).
Declared at: clang/include/clang/AST/ExprCXX.h:1690
¶clang::SourceLocation getBeginLoc() const
clang::SourceLocation getBeginLoc() const
Declared at: clang/include/clang/AST/ExprCXX.h:1703
¶CXXConstructExpr::ConstructionKind
getConstructionKind() const
CXXConstructExpr::ConstructionKind
getConstructionKind() const
Declared at: clang/include/clang/AST/ExprCXX.h:1691
¶clang::CXXConstructorDecl* getConstructor() const
clang::CXXConstructorDecl* getConstructor() const
Description
Get the constructor that this expression will call.
Declared at: clang/include/clang/AST/ExprCXX.h:1686
¶clang::SourceLocation getEndLoc() const
clang::SourceLocation getEndLoc() const
Declared at: clang/include/clang/AST/ExprCXX.h:1704
¶clang::SourceLocation getLocation() const
clang::SourceLocation getLocation() const
Declared at: clang/include/clang/AST/ExprCXX.h:1702
¶bool inheritedFromVBase() const
bool inheritedFromVBase() const
Description
Determine whether the inherited constructor is inherited from a virtual base of the object we construct. If so, we are not responsible for calling the inherited constructor (the complete object constructor does that), and so we don't need to pass any arguments.
Declared at: clang/include/clang/AST/ExprCXX.h:1700