clang API Documentation
#include <Decl.h>


Public Member Functions | |
| QualType | getType () const |
| void | setType (QualType newType) |
| bool | isWeak () const |
| Determine whether this symbol is weakly-imported, or declared with the weak or weak-ref attr. | |
Static Public Member Functions | |
| static bool | classof (const Decl *D) |
| static bool | classof (const ValueDecl *D) |
| static bool | classofKind (Kind K) |
Protected Member Functions | |
| ValueDecl (Kind DK, DeclContext *DC, SourceLocation L, DeclarationName N, QualType T) | |
ValueDecl - Represent the declaration of a variable (in which case it is an lvalue) a function (in which case it is a function designator) or an enum constant.
| clang::ValueDecl::ValueDecl | ( | Kind | DK, |
| DeclContext * | DC, | ||
| SourceLocation | L, | ||
| DeclarationName | N, | ||
| QualType | T | ||
| ) | [inline, protected] |
| static bool clang::ValueDecl::classof | ( | const Decl * | D | ) | [inline, static] |
Reimplemented from clang::NamedDecl.
Reimplemented in clang::UnresolvedUsingValueDecl, clang::IndirectFieldDecl, clang::EnumConstantDecl, clang::CXXConversionDecl, clang::FieldDecl, clang::CXXDestructorDecl, clang::FunctionDecl, clang::CXXConstructorDecl, clang::CXXMethodDecl, clang::ParmVarDecl, clang::ImplicitParamDecl, clang::VarDecl, clang::NonTypeTemplateParmDecl, clang::ObjCAtDefsFieldDecl, clang::ObjCIvarDecl, and clang::DeclaratorDecl.
Definition at line 514 of file Decl.h.
References classofKind(), and clang::Decl::getKind().
| static bool clang::ValueDecl::classof | ( | const ValueDecl * | D | ) | [inline, static] |
| static bool clang::ValueDecl::classofKind | ( | Kind | K | ) | [inline, static] |
Reimplemented from clang::NamedDecl.
Reimplemented in clang::UnresolvedUsingValueDecl, clang::IndirectFieldDecl, clang::EnumConstantDecl, clang::CXXConversionDecl, clang::FieldDecl, clang::CXXDestructorDecl, clang::FunctionDecl, clang::CXXConstructorDecl, clang::CXXMethodDecl, clang::ParmVarDecl, clang::ImplicitParamDecl, clang::VarDecl, clang::NonTypeTemplateParmDecl, clang::ObjCAtDefsFieldDecl, clang::ObjCIvarDecl, and clang::DeclaratorDecl.
Definition at line 516 of file Decl.h.
Referenced by classof().
| QualType clang::ValueDecl::getType | ( | ) | const [inline] |
Definition at line 504 of file Decl.h.
Referenced by clang::Sema::ActOnBlockStmtExpr(), clang::Sema::ActOnCUDAExecConfigExpr(), clang::Sema::ActOnCXXInClassMemberInitializer(), clang::Sema::ActOnDefs(), clang::Sema::ActOnEndOfTranslationUnit(), clang::Sema::ActOnEnumBody(), clang::Sema::ActOnFields(), clang::Sema::ActOnForEachDeclStmt(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::ActOnInitializerError(), clang::Sema::ActOnMethodDeclaration(), clang::Sema::ActOnNonTypeTemplateParameter(), clang::Sema::ActOnObjCForCollectionStmt(), clang::Sema::ActOnPropertyImplDecl(), clang::Sema::ActOnStartOfObjCMethodDef(), clang::InitializationSequence::AddAddressOverloadResolutionStep(), clang::Sema::AddConversionCandidate(), clang::Sema::AddCXXDirectInitializerToDecl(), AddFunctionParameterChunks(), AddFunctionTypeQualsToCompletionString(), clang::Sema::AddInitializerToDecl(), clang::CodeGen::CodeGenFunction::AddInitializerToStaticVarDecl(), clang::Sema::AddKnownFunctionAttributes(), clang::Sema::AddMethodCandidate(), clang::Sema::AddOverloadCandidate(), clang::Sema::AdjustDestructorExceptionSpec(), clang::ObjCMethodDecl::arg_type_begin(), clang::ObjCMethodDecl::arg_type_end(), clang::Sema::BuildAnonymousStructUnionMemberReference(), clang::CodeGen::CodeGenFunction::BuildAppleKextVirtualDestructorCall(), BuildBlockDeclRefExpr(), clang::Sema::BuildBuiltinOffsetOf(), clang::CodeGen::CodeGenFunction::BuildByRefType(), clang::Sema::BuildCallToMemberFunction(), clang::Sema::BuildCallToObjectOfClassType(), clang::Sema::BuildCXXForRangeStmt(), clang::Sema::BuildCXXNew(), clang::Sema::BuildDeclarationNameExpr(), BuildFieldReferenceExpr(), BuildImplicitBaseInitializer(), BuildImplicitMemberInitializer(), clang::Sema::BuildMemberInitializer(), clang::Sema::BuildResolvedCallExpr(), clang::Sema::ImplicitExceptionSpecification::CalledDecl(), CanCalleeThrow(), canExpandIndirectArgument(), CheckAddressOfOperand(), checkARCPropertyImpl(), checkAttrArgsAreLockableObjs(), clang::Sema::CheckCompleteVariableDeclaration(), clang::Sema::CheckConditionVariable(), CheckConstexprCtorInitializer(), CheckConstexprParameterTypes(), clang::Sema::CheckConstructor(), clang::Sema::CheckConstructorAccess(), clang::Sema::CheckEquivalentExceptionSpec(), clang::Sema::CheckExplicitlyDefaultedCopyAssignment(), clang::Sema::CheckExplicitlyDefaultedCopyConstructor(), clang::Sema::CheckExplicitlyDefaultedDefaultConstructor(), clang::Sema::CheckExplicitlyDefaultedDestructor(), clang::Sema::CheckExplicitlyDefaultedMoveAssignment(), clang::Sema::CheckExplicitlyDefaultedMoveConstructor(), CheckForDanglingReferenceOrPointer(), clang::Sema::CheckFunctionDeclaration(), clang::Sema::CheckFunctionTemplateSpecialization(), clang::Sema::CheckLiteralOperatorDeclaration(), clang::Sema::CheckMain(), clang::Sema::CheckMessageArgumentTypes(), CheckMethodOverrideParam(), clang::Sema::CheckNontrivialField(), CheckNonTypeClassTemplatePartialSpecializationArgs(), checkObjCDealloc(), CheckOperatorNewDeleteTypes(), clang::Sema::CheckOverridingFunctionExceptionSpec(), clang::Sema::CheckOverridingFunctionReturnType(), clang::Sema::CheckParmsForFunctionDef(), clang::Sema::CheckTemplateArgument(), clang::Sema::CheckVariableDeclaration(), clang::Sema::CodeCompleteCall(), clang::Sema::CodeCompleteInitializer(), CollectFieldInitializer(), clang::Sema::CompleteConstructorCall(), computeBlockInfo(), considerVariable(), CopyObject(), clang::CreateFunctionRefExpr(), clang::CodeGen::CodeGenFunction::CreateStaticVarDecl(), clang::Sema::DeclareInheritedConstructors(), DeclIsConstantGlobal(), clang::ASTContext::DeclMustBeEmitted(), clang::Sema::DeduceTemplateArguments(), clang::Sema::DefineImplicitCopyAssignment(), clang::Sema::DefineImplicitMoveAssignment(), describeCall(), clang::Sema::DiagnoseAutoDeductionFailure(), DiagnoseInvalidRedeclaration(), DiagnoseSelfAssignment(), DumpCXXRecordLayout(), emitArgumentDemotion(), clang::CodeGen::CodeGenFunction::EmitARMBuiltinExpr(), clang::CodeGen::CodeGenFunction::EmitAutoVarAlloca(), clang::CodeGen::CodeGenFunction::EmitAutoVarCleanups(), clang::CodeGen::CodeGenFunction::EmitAutoVarInit(), clang::CodeGen::CodeGenFunction::emitAutoVarTypeCleanup(), EmitAutoVarWithLifetime(), clang::CodeGen::CodeGenFunction::EmitBlockLiteral(), clang::CodeGen::CodeGenFunction::emitByrefStructureInit(), clang::CodeGen::CodeGenModule::EmitConstantInit(), emitCPPObjectAtomicSetterCall(), clang::CodeGen::CodeGenFunction::EmitCXXGlobalVarDeclInit(), clang::CodeGen::CodeGenFunction::EmitCXXMemberCall(), clang::CodeGen::CodeGenFunction::EmitCXXNewExpr(), clang::CodeGen::CodeGenFunction::EmitCXXOperatorMemberCallee(), clang::CodeGen::CGDebugInfo::EmitDeclareOfBlockDeclRefVariable(), clang::CodeGen::CGDebugInfo::EmitDeclareOfBlockLiteralArgVariable(), EmitDeclDestroy(), EmitDeclInit(), clang::CodeGen::CodeGenFunction::EmitDelegateCallArg(), clang::CodeGen::CodeGenFunction::EmitDeleteCall(), clang::CodeGen::CodeGenFunction::EmitEndEHSpec(), clang::CodeGen::CodeGenFunction::EmitExprAsInit(), EmitFunctionDeclLValue(), clang::CodeGen::CodeGenFunction::EmitFunctionProlog(), EmitGlobalVarDeclLValue(), clang::CodeGen::CGDebugInfo::EmitGlobalVariable(), clang::CodeGen::CodeGenFunction::EmitLValueForBitfield(), clang::CodeGen::CodeGenFunction::EmitLValueForField(), clang::CodeGen::CodeGenFunction::EmitLValueForFieldInitialization(), EmitMemberInitializer(), clang::CodeGen::CGCXXABI::EmitMemberPointer(), EmitNullConstant(), clang::CodeGen::CodeGenFunction::EmitObjCForCollectionStmt(), clang::CodeGen::CodeGenFunction::EmitParmDecl(), clang::CodeGen::CodeGenFunction::EmitStartEHSpec(), clang::CodeGen::CodeGenFunction::EmitStaticVarDecl(), emitStructGetterCall(), emitStructSetterCall(), clang::CodeGen::CodeGenFunction::EmitSynthesizedCXXCopyCtorCall(), clang::CodeGen::CGObjCRuntime::EmitTryCatchStmt(), clang::CodeGen::CGObjCRuntime::EmitValueForIvarAtOffset(), enterBlockScope(), clang::CodeGen::CodeGenFunction::EnterDtorCleanups(), EvalAddr(), clang::Expr::EvaluateAsInitializer(), EvaluateUnaryTypeTrait(), EvalVal(), clang::VarDecl::extendsLifetimeOfTemporary(), FieldHasTrivialDestructorBody(), clang::Sema::FinalizeVarWithDestructor(), clang::Sema::FindAllocationFunctions(), clang::Sema::FindAssociatedClassesAndNamespaces(), FindFirstNamedDataMember(), findRetainCycleOwner(), clang::Sema::FinishTemplateArgumentDeduction(), clang::Sema::FixOverloadedFunctionReference(), FormatFunctionParameter(), clang::CodeGen::CodeGenFunction::GenerateBlockFunction(), clang::CodeGen::CodeGenFunction::GenerateCopyHelperFunction(), clang::CodeGen::CodeGenFunction::GenerateDestroyHelperFunction(), clang::CodeGen::CodeGenFunction::GenerateObjCAtomicSetterCopyHelperFunction(), clang::CodeGen::CodeGenFunction::generateObjCGetterBody(), clang::CodeGen::CodeGenFunction::generateObjCSetterBody(), clang::CodeGen::CodeGenFunction::GenerateThunk(), clang::CodeGen::CodeGenFunction::GenerateVarArgsThunk(), clang::CodeGen::CodeGenFunction::GetAddrOfBlockDecl(), clang::CodeGen::CodeGenModule::GetAddrOfCXXConstructor(), clang::CodeGen::CodeGenModule::GetAddrOfGlobalVar(), clang::CodeGen::CodeGenModule::getBuiltinLibFunction(), clang::FunctionDecl::getCallResultType(), clang::CXXCatchStmt::getCaughtType(), clang::CXXConversionDecl::getConversionType(), clang::CXXRecordDecl::getCopyAssignmentOperator(), clang::Sema::getCopyElisionCandidate(), clang::CFGImplicitDtor::getDestructorDecl(), clang::CodeGen::CodeGenTypes::GetExpandedTypes(), GetFormalType(), GetFullTypeForDeclarator(), clang::CodeGen::CodeGenTypes::getFunctionInfo(), clang::CodeGen::CodeGenTypes::GetFunctionTypeForVTable(), clang::ASTContext::GetGVALinkageForVariable(), clang::ento::SubEngine::getInitialState(), clang::EnumDecl::getIntegerType(), GetKeyForTopLevelField(), clang::ento::FunctionTextRegion::getLocationType(), GetNumNonZeroBytesInInit(), clang::FunctionDecl::getNumParams(), clang::ASTContext::getObjCEncodingForBlock(), clang::ASTContext::getObjCEncodingForFunctionDecl(), clang::ASTContext::getObjCEncodingForMethodDecl(), clang::ParmVarDecl::getOriginalType(), clang::CXXMethodDecl::getRefQualifier(), clang::FunctionDecl::getResultType(), GetTypeOfFunction(), clang::CXXMethodDecl::getTypeQualifiers(), clang::ento::VarRegion::getValueType(), clang::ento::FieldRegion::getValueType(), clang::ento::CXXBaseObjectRegion::getValueType(), clang::ento::MemRegionManager::getVarRegion(), clang::CodeGen::CodeGenModule::GetWeakRefReference(), handleAcquireOrderAttr(), handleAnalyzerNoReturnAttr(), handleCleanupAttr(), handleGlobalAttr(), HandleLValueToRValueConversion(), handleNSConsumedAttr(), handleObjCPreciseLifetimeAttr(), handleTransparentUnionAttr(), HandleX86ForceAlignArgPointerAttr(), hasSimilarParameters(), clang::Sema::inferObjCARCLifetime(), InitCatchParam(), clang::TemplateDeclInstantiator::InitFunctionInstantiation(), clang::InitializedEntity::InitializeParameter(), clang::Sema::InitializeVarWithConstructor(), InjectAnonymousStructOrUnionMembers(), IsAcceptableNonMemberOperatorCandidate(), clang::FieldDecl::isAnonymousStructOrUnion(), isAtLeastAsSpecializedAs(), IsConstructorDelegationValid(), clang::CXXConstructorDecl::isConvertingConstructor(), clang::CXXMethodDecl::isCopyAssignmentOperator(), clang::CXXConstructorDecl::isCopyConstructor(), clang::CXXConstructorDecl::isCopyOrMoveConstructor(), isEmptyField(), isHomogeneousAggregate(), clang::Sema::isInitListConstructor(), isIntegerLikeType(), clang::CXXMethodDecl::isMoveAssignmentOperator(), clang::CXXConstructorDecl::isMoveConstructor(), clang::Sema::IsOverload(), clang::ParmVarDecl::isParameterPack(), clang::ASTContext::isPromotableBitField(), clang::FunctionDecl::isReservedGlobalPlacementOperator(), isSameEntity(), isSingleElementStruct(), clang::CXXConstructorDecl::isSpecializationCopyingObject(), clang::IsStandardConversion(), IsStructurallyEquivalent(), isTrackedVar(), clang::VarDecl::isUsableInConstantExpressions(), clang::CXXMethodDecl::isUsualDeallocationFunction(), clang::FunctionDecl::isVariadic(), LookupDirect(), clang::Sema::LookupInObjCMethod(), clang::Sema::LookupMemberExpr(), clang::CodeGen::CGBitFieldInfo::MakeInfo(), clang::Sema::MarkBaseAndMemberDestructorsReferenced(), clang::Sema::MarkDeducedTemplateParameters(), MatchTemplateParameterKind(), clang::Sema::MergeFunctionDecl(), clang::Sema::MergeVarDeclExceptionSpecs(), clang::Sema::MergeVarDeclTypes(), MightInstantiateTo(), clang::Sema::NoteOverloadCandidate(), clang::InitializationSequence::Perform(), clang::Sema::PerformImplicitConversion(), clang::Sema::PerformMoveOrCopyInitialization(), print_elem(), clang::ento::ExprEngine::ProcessAutomaticObjDtor(), clang::TreeTransform< Derived >::RebuildMemberExpr(), clang::TreeTransform< Derived >::RebuildShuffleVectorExpr(), RefersToRValueRef(), setImpliedPropertyAttributeForReadOnlyProperty(), clang::Sema::SetIvarInitializers(), clang::Sema::SetParamDefaultArgument(), clang::Sema::ShouldDeleteCopyAssignmentOperator(), clang::Sema::ShouldDeleteSpecialMember(), clang::CXXNewExpr::shouldNullCheckAllocation(), clang::TemplateDeclInstantiator::SubstFunctionType(), clang::Sema::SubstituteExplicitTemplateArguments(), SuggestInitializationFixit(), clang::TreeTransform< Derived >::TransformFunctionTypeParams(), tryCaptureAsConstant(), clang::Sema::TryCaptureVar(), clang::TryListConversion(), clang::TryReferenceInit(), clang::ento::ExprEngine::VisitCXXConstructExpr(), clang::ento::ExprEngine::VisitCXXNewExpr(), clang::ASTNodeImporter::VisitEnumConstantDecl(), clang::ASTNodeImporter::VisitFieldDecl(), clang::ASTNodeImporter::VisitFunctionDecl(), clang::TemplateDeclInstantiator::VisitFunctionDecl(), clang::ASTNodeImporter::VisitImplicitParamDecl(), clang::ASTNodeImporter::VisitIndirectFieldDecl(), clang::ASTNodeImporter::VisitNonTypeTemplateParmDecl(), clang::ASTNodeImporter::VisitObjCIvarDecl(), clang::ASTNodeImporter::VisitParmVarDecl(), clang::ento::ConditionBRVisitor::VisitTrueTest(), clang::ASTDeclWriter::VisitValueDecl(), clang::ASTNodeImporter::VisitVarDecl(), and clang::TemplateDeclInstantiator::VisitVarDecl().
| bool clang::ValueDecl::isWeak | ( | ) | const [inline] |
Determine whether this symbol is weakly-imported, or declared with the weak or weak-ref attr.
Definition at line 509 of file Decl.h.
References clang::Decl::isWeakImported().
Referenced by clang::VarDecl::checkInitIsICE(), EvalPointerValueAsBool(), EvaluateVarDeclInit(), and IsWeakLValue().
| void clang::ValueDecl::setType | ( | QualType | newType | ) | [inline] |
Definition at line 505 of file Decl.h.
Referenced by clang::Sema::ActOnEndOfTranslationUnit(), clang::Sema::ActOnEnumBody(), clang::Sema::ActOnFields(), clang::Sema::ActOnForEachDeclStmt(), clang::Sema::ActOnFunctionDeclarator(), clang::Sema::AddCXXDirectInitializerToDecl(), clang::Sema::AddInitializerToDecl(), clang::Sema::AdjustDestructorExceptionSpec(), clang::Sema::CheckEquivalentExceptionSpec(), clang::Sema::CheckExplicitlyDefaultedCopyAssignment(), clang::Sema::CheckExplicitlyDefaultedCopyConstructor(), clang::Sema::CheckExplicitlyDefaultedDestructor(), clang::Sema::CheckExplicitlyDefaultedMoveAssignment(), clang::Sema::CheckExplicitlyDefaultedMoveConstructor(), clang::Sema::CheckParameter(), clang::Sema::CheckVariableDeclaration(), GetFullTypeForDeclarator(), clang::Sema::inferObjCARCLifetime(), clang::TemplateDeclInstantiator::InitFunctionInstantiation(), clang::Sema::MergeFunctionDecl(), clang::Sema::MergeVarDeclTypes(), clang::Sema::RebuildTemplateParamsInCurrentInstantiation(), and clang::ASTDeclReader::VisitValueDecl().