class SourceLocExpr
Declaration
class SourceLocExpr : public Expr { /* full declaration omitted */ };
Description
Represents a function call to one of __builtin_LINE(), __builtin_COLUMN(), __builtin_FUNCTION(), __builtin_FILE(), or __builtin_source_location().
Declared at: clang/include/clang/AST/Expr.h:4682
Inherits from: Expr
Member Variables
- private clang::SourceLocation BuiltinLoc
- private clang::SourceLocation RParenLoc
- private clang::DeclContext* ParentContext
Inherited from Stmt:
Method Overview
- public clang::APValue EvaluateInContext(const clang::ASTContext & Ctx, const clang::Expr * DefaultExpr) const
- public SourceLocExpr(const clang::ASTContext & Ctx, clang::SourceLocExpr::IdentKind Type, clang::QualType ResultTy, clang::SourceLocation BLoc, clang::SourceLocation RParenLoc, clang::DeclContext * Context)
- public SourceLocExpr(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 clang::SourceLocation getBeginLoc() const
- public llvm::StringRef getBuiltinStr() const
- public clang::SourceLocation getEndLoc() const
- public clang::SourceLocExpr::IdentKind getIdentKind() const
- public clang::SourceLocation getLocation() const
- public const clang::DeclContext * getParentContext() const
- public clang::DeclContext * getParentContext()
- public bool isIntType() 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
¶clang::APValue EvaluateInContext(
const clang::ASTContext& Ctx,
const clang::Expr* DefaultExpr) const
clang::APValue EvaluateInContext(
const clang::ASTContext& Ctx,
const clang::Expr* DefaultExpr) const
Description
Return the result of evaluating this SourceLocExpr in the specified (and possibly null) default argument or initialization context.
Declared at: clang/include/clang/AST/Expr.h:4698
Parameters
- const clang::ASTContext& Ctx
- const clang::Expr* DefaultExpr
¶SourceLocExpr(
const clang::ASTContext& Ctx,
clang::SourceLocExpr::IdentKind Type,
clang::QualType ResultTy,
clang::SourceLocation BLoc,
clang::SourceLocation RParenLoc,
clang::DeclContext* Context)
SourceLocExpr(
const clang::ASTContext& Ctx,
clang::SourceLocExpr::IdentKind Type,
clang::QualType ResultTy,
clang::SourceLocation BLoc,
clang::SourceLocation RParenLoc,
clang::DeclContext* Context)
Declared at: clang/include/clang/AST/Expr.h:4689
Parameters
- const clang::ASTContext& Ctx
- clang::SourceLocExpr::IdentKind Type
- clang::QualType ResultTy
- clang::SourceLocation BLoc
- clang::SourceLocation RParenLoc
- clang::DeclContext* Context
¶SourceLocExpr(clang::Stmt::EmptyShell Empty)
SourceLocExpr(clang::Stmt::EmptyShell Empty)
Description
Build an empty call expression.
Declared at: clang/include/clang/AST/Expr.h:4694
Parameters
- clang::Stmt::EmptyShell Empty
¶clang::Stmt::child_range children()
clang::Stmt::child_range children()
Declared at: clang/include/clang/AST/Expr.h:4730
¶clang::Stmt::const_child_range children() const
clang::Stmt::const_child_range children() const
Declared at: clang/include/clang/AST/Expr.h:4734
¶static bool classof(const clang::Stmt* T)
static bool classof(const clang::Stmt* T)
Declared at: clang/include/clang/AST/Expr.h:4738
Parameters
- const clang::Stmt* T
¶clang::SourceLocation getBeginLoc() const
clang::SourceLocation getBeginLoc() const
Declared at: clang/include/clang/AST/Expr.h:4727
¶llvm::StringRef getBuiltinStr() const
llvm::StringRef getBuiltinStr() const
Description
Return a string representing the name of the specific builtin function.
Declared at: clang/include/clang/AST/Expr.h:4702
¶clang::SourceLocation getEndLoc() const
clang::SourceLocation getEndLoc() const
Declared at: clang/include/clang/AST/Expr.h:4728
¶clang::SourceLocExpr::IdentKind getIdentKind()
const
clang::SourceLocExpr::IdentKind getIdentKind()
const
Declared at: clang/include/clang/AST/Expr.h:4704
¶clang::SourceLocation getLocation() const
clang::SourceLocation getLocation() const
Declared at: clang/include/clang/AST/Expr.h:4726
¶const clang::DeclContext* getParentContext() const
const clang::DeclContext* getParentContext() const
Description
If the SourceLocExpr has been resolved return the subexpression representing the resolved value. Otherwise return null.
Declared at: clang/include/clang/AST/Expr.h:4723
¶clang::DeclContext* getParentContext()
clang::DeclContext* getParentContext()
Declared at: clang/include/clang/AST/Expr.h:4724
¶bool isIntType() const
bool isIntType() const
Declared at: clang/include/clang/AST/Expr.h:4708