clang
7.0.0
|
ActionResult - This structure is used while parsing/acting on expressions, stmts, etc. More...
#include "clang/Sema/Ownership.h"
Public Member Functions | |
ActionResult (bool Invalid=false) | |
ActionResult (PtrTy val) | |
ActionResult (const DiagnosticBuilder &) | |
ActionResult (const void *)=delete | |
ActionResult (volatile void *)=delete | |
bool | isInvalid () const |
bool | isUsable () const |
bool | isUnset () const |
PtrTy | get () const |
template<typename T > | |
T * | getAs () |
void | set (PtrTy V) |
const ActionResult & | operator= (PtrTy RHS) |
ActionResult - This structure is used while parsing/acting on expressions, stmts, etc.
It encapsulates both the object returned by the action, plus a sense of whether or not it is valid. When CompressInvalid is true, the "invalid" flag will be stored in the low bit of the Val pointer.
Definition at line 157 of file Ownership.h.
|
inline |
Definition at line 162 of file Ownership.h.
|
inline |
Definition at line 163 of file Ownership.h.
|
inline |
Definition at line 164 of file Ownership.h.
|
delete |
|
delete |
|
inline |
Definition at line 174 of file Ownership.h.
Referenced by clang::Sema::ActOnCallExpr(), clang::Sema::ActOnCapScopeReturnStmt(), clang::Sema::ActOnCaseExpr(), clang::Sema::ActOnCaseStmt(), clang::Sema::ActOnCastExpr(), clang::Sema::ActOnConditionalOp(), clang::Sema::ActOnConditionVariable(), clang::Sema::ActOnConstantExpression(), clang::Sema::ActOnCXXDelete(), clang::Sema::ActOnDecltypeExpression(), clang::Sema::ActOnDoStmt(), clang::Sema::ActOnExprStmt(), clang::Sema::ActOnFinishCXXInClassMemberInitializer(), clang::Sema::ActOnFinishFullExpr(), clang::Sema::ActOnForEachLValueExpr(), clang::Sema::ActOnInstanceMessage(), clang::Sema::ActOnNoexceptSpec(), clang::Sema::ActOnObjCAtSynchronizedOperand(), clang::Sema::ActOnOMPArraySectionExpr(), clang::Sema::ActOnOpenMPDeclareReductionType(), clang::Sema::ActOnOpenMPDistScheduleClause(), clang::Sema::ActOnOpenMPFinalClause(), clang::Sema::ActOnOpenMPIfClause(), clang::Sema::ActOnOpenMPLinearClause(), clang::Sema::ActOnOpenMPOrderedClause(), clang::Sema::ActOnOpenMPScheduleClause(), clang::Sema::ActOnPackExpansion(), clang::Sema::ActOnReturnStmt(), clang::Sema::ActOnStartCXXMemberReference(), clang::Sema::ActOnTemplateTypeArgument(), addConstexprToLambdaDeclSpecifier(), addContextSensitiveTypeNullability(), clang::Sema::AddInitializerToDecl(), clang::AssertSuccess(), attemptRecovery(), attributeParsedArgsUnevaluated(), clang::Sema::BuildAnonymousStructUnionMemberReference(), clang::Sema::BuildBinOp(), clang::Sema::BuildCallToObjectOfClassType(), buildCapture(), buildCaptureDecl(), clang::Sema::buildCoroutineParameterMoves(), buildCounterInit(), buildCounterUpdate(), clang::Sema::BuildCXXFunctionalCastExpr(), clang::Sema::BuildCXXNoexceptExpr(), clang::Sema::BuildDelegatingInitializer(), clang::CoroutineStmtBuilder::buildDependentStatements(), clang::Sema::BuildExpressionTrait(), BuildImplicitBaseInitializer(), BuildImplicitMemberInitializer(), clang::Sema::BuildMemberInitializer(), clang::Sema::BuildMemberReferenceExpr(), buildMemcpyForAssignmentOp(), clang::Sema::BuildMemInitializer(), BuildNonArrayForRange(), clang::Sema::BuildObjCAtThrowStmt(), clang::Sema::BuildObjCBridgedCast(), clang::Sema::BuildObjCSubscriptExpression(), BuildRecoveryCallExpr(), clang::Sema::BuildStaticAssertDeclaration(), clang::Sema::BuildUnaryOp(), canConvertIntToOtherIntTy(), canConvertIntTyToFloatTy(), clang::Sema::CanPerformCopyInitialization(), captureThis(), clang::Sema::CheckAdditionOperands(), clang::Sema::CheckAddressOfOperand(), checkArgsForPlaceholders(), checkArithmeticNull(), checkArithmeticOrEnumeralCompare(), checkArithmeticOrEnumeralThreeWayCompare(), CheckArrayDesignatorSyntax(), CheckArrow(), clang::Sema::CheckAssignmentConstraints(), clang::Sema::CheckAssignmentOperands(), clang::Sema::CheckBitwiseOperands(), checkBuiltinArgument(), CheckCommaOperands(), checkConditionalBlockPointerCompatibility(), checkConditionalNullPointer(), checkConditionalObjectPointersCompatibility(), clang::Sema::CheckConditionalOperands(), checkConditionalPointerCompatibility(), checkConditionalVoidType(), clang::Sema::CheckConditionVariable(), CheckConvertedConstantExpression(), CheckIncrementDecrementOperand(), CheckIndirectionOperand(), clang::Sema::CheckLogicalOperands(), clang::Sema::CheckMessageArgumentTypes(), clang::Sema::CheckMultiplyDivideOperands(), CheckObjCCollectionLiteralElement(), clang::Sema::CheckObjCForCollectionOperand(), checkObjCPointerIntrospection(), checkOpenMPLoop(), clang::Sema::CheckPlaceholderExpr(), checkPointerIntegerMismatch(), clang::Sema::CheckPointerToMemberOperands(), clang::Sema::CheckRemainderOperands(), clang::Sema::CheckShiftOperands(), clang::Sema::CheckSingleAssignmentConstraints(), clang::Sema::CheckSubtractionOperands(), clang::Sema::CheckTemplateArgument(), clang::Sema::CheckTransparentUnionArgumentConstraints(), clang::Sema::checkUnknownAnyArg(), clang::Sema::checkUnknownAnyCast(), clang::Sema::CheckVarTemplateId(), clang::Sema::CheckVectorCompareOperands(), clang::Sema::CheckVectorLogicalOperands(), clang::Sema::CheckVectorOperands(), checkVectorShift(), clang::Sema::CodeCompleteMemberReferenceExpr(), clang::Sema::CodeCompleteObjCInstanceMessage(), CollectFieldInitializer(), ConvertForConditional(), convertPointersToCompositeType(), CopyObject(), clang::Sema::CreateBuiltinArraySubscriptExpr(), clang::Sema::CreateBuiltinBinOp(), clang::Sema::CreateBuiltinUnaryOp(), clang::Sema::CreateGenericSelectionExpr(), clang::Sema::CXXCheckConditionalOperands(), clang::Sema::DeduceAutoType(), DeduceNullPtrTemplateArgument(), DiagnoseBadDivideOrRemainderValues(), DiagnoseBadFunctionCast(), DiagnoseBadShiftValues(), DiagnoseCallingConvCast(), DiagnoseCastOfObjCSEL(), DiagnoseCastQual(), diagnoseDistinctPointerComparison(), diagnoseDynamicExceptionSpecification(), diagnoseFunctionPointerToVoidComparison(), diagnoseLogicalNotOnLHSofCheck(), diagnoseNoViableConversion(), diagnoseObjCLiteralComparison(), clang::Sema::FindCompositeObjCPointerType(), clang::Sema::FindCompositePointerType(), FindConditionalOverload(), FinishForRangeVarDecl(), FinishOpenMPLinearClause(), getCastAwayConstnessCastKind(), clang::Sema::ImplicitExceptionSpecification::getExceptionSpec(), getMissingDeclaratorIdLoc(), clang::Sema::getOpenMPCapturedExpr(), getVarTemplateSpecialization(), HandleAddressSpaceTypeAttribute(), HandleExtVectorTypeAttr(), HandleVectorSizeAttr(), clang::Sema::IgnoredValueConversions(), clang::TemplateDeclInstantiator::InstantiateEnumDefinition(), clang::Sema::InstantiateVariableInitializer(), clang::Sema::InvalidLogicalVectorOperands(), clang::Sema::InvalidOperands(), IsBuiltInOrStandardCXX11Attribute(), isNonNegativeIntegerValue(), isNullPointerValueTemplateArgument(), isTupleLike(), isValidOrderingForOp(), clang::Sema::LookupInlineAsmIdentifier(), LookupMemberExpr(), LookupMethodInReceiverType(), clang::Sema::MakeFullDiscardedValueExpr(), clang::Sema::MaybeCreateExprWithCleanups(), clang::Sema::mightBeIntendedToBeTemplateName(), OpenCLArithmeticConversions(), OpenCLCheckVectorConditional(), OpenCLConvertScalarsToVectors(), clang::Parser::ParseConstraintExpression(), parseDeclareSimdClauses(), clang::Parser::ParseExpression(), clang::Parser::ParseMSAsmIdentifier(), clang::Parser::ParseOpenMPParensExpr(), clang::Parser::ParseOpenMPVarList(), clang::Parser::ParseTopLevelDecl(), clang::Parser::ParseUnqualifiedId(), clang::InitializationSequence::Perform(), PerformConstructorInitialization(), clang::Sema::PerformContextualImplicitConversion(), clang::Sema::PerformCopyInitialization(), clang::Sema::PerformImplicitConversion(), PragmaLoopHintString(), clang::Sema::PrepareScalarCast(), clang::TreeTransform< Derived >::RebuildCXXOperatorCallExpr(), clang::TreeTransform< Derived >::RebuildObjCForCollectionStmt(), clang::TreeTransform< Derived >::RebuildPackExpansion(), clang::TreeTransform< Derived >::RebuildShuffleVectorExpr(), recordConversion(), clang::Sema::ResolveAndFixSingleFunctionTemplateSpecialization(), resolveBuiltinNewDeleteOverload(), clang::Sema::SetIvarInitializers(), ShouldTryAgainWithRedefinitionType(), clang::Sema::SubstParmVarDecl(), takeDeclAttributes(), clang::TreeTransform< Derived >::TransformAddressOfOperand(), clang::TreeTransform< Derived >::TransformCompoundStmt(), clang::TreeTransform< Derived >::TransformCondition(), clang::TreeTransform< Derived >::TransformCXXNamedCastExpr(), clang::TreeTransform< Derived >::TransformExceptionSpec(), clang::TreeTransform< Derived >::TransformParenDependentScopeDeclRefExpr(), clang::Parser::TryAnnotateTypeOrScopeToken(), clang::Parser::TryAnnotateTypeOrScopeTokenAfterScopeSpec(), TryConstCast(), tryGCCVectorConvertAndSplat(), TryReinterpretCast(), TryStaticCast(), TryStaticImplicitCast(), TryStaticMemberPointerUpcast(), tryVectorConvertAndSplat(), TypeTraitArity(), clang::Sema::UsualArithmeticConversions(), and clang::Sema::VerifyBitField().
|
inline |
Definition at line 175 of file Ownership.h.
Referenced by clang::Sema::ActOnExprStmt(), clang::Sema::ActOnForStmt(), BuildImplicitBaseInitializer(), BuildImplicitMemberInitializer(), buildMemcpyForAssignmentOp(), clang::InitializationSequence::Perform(), clang::Sema::SubstDefaultTemplateArgumentIfAvailable(), clang::TreeTransform< Derived >::TransformCompoundStmt(), and clang::TemplateDeclInstantiator::VisitVarDecl().
|
inline |
Definition at line 170 of file Ownership.h.
Referenced by clang::Sema::ActOnCallExpr(), clang::Sema::ActOnCapScopeReturnStmt(), clang::Sema::ActOnCaseStmt(), clang::Sema::ActOnConditionVariable(), clang::Sema::ActOnCXXDelete(), clang::Sema::ActOnDecltypeExpression(), clang::Sema::ActOnDoStmt(), clang::Sema::ActOnExprStmt(), clang::Sema::ActOnFinishCXXInClassMemberInitializer(), clang::Sema::ActOnFinishFullExpr(), clang::Sema::ActOnForEachLValueExpr(), clang::Sema::ActOnInstanceMessage(), clang::Sema::ActOnNoexceptSpec(), clang::Sema::ActOnObjCAtSynchronizedOperand(), clang::Sema::ActOnOMPArraySectionExpr(), clang::Sema::ActOnOpenMPCollapseClause(), clang::Sema::ActOnOpenMPDistScheduleClause(), clang::Sema::ActOnOpenMPFinalClause(), clang::Sema::ActOnOpenMPHintClause(), clang::Sema::ActOnOpenMPIfClause(), clang::Sema::ActOnOpenMPLinearClause(), clang::Sema::ActOnOpenMPOrderedClause(), clang::Sema::ActOnOpenMPSafelenClause(), clang::Sema::ActOnOpenMPScheduleClause(), clang::Sema::ActOnOpenMPSimdlenClause(), clang::Sema::ActOnPackExpansion(), clang::Sema::ActOnReturnStmt(), clang::Sema::ActOnStartCXXMemberReference(), addConstexprToLambdaDeclSpecifier(), addContextSensitiveTypeNullability(), clang::AssertSuccess(), attemptRecovery(), attributeParsedArgsUnevaluated(), clang::Sema::BuildAnonymousStructUnionMemberReference(), clang::Sema::BuildBinOp(), clang::Sema::buildCoroutineParameterMoves(), buildCounterUpdate(), clang::Sema::BuildCXXNoexceptExpr(), clang::Sema::BuildCXXTypeConstructExpr(), clang::Sema::BuildDelegatingInitializer(), clang::CoroutineStmtBuilder::buildDependentStatements(), clang::Sema::BuildExpressionTrait(), BuildImplicitBaseInitializer(), BuildImplicitMemberInitializer(), clang::Sema::BuildLiteralOperatorCall(), clang::Sema::BuildMemberInitializer(), clang::Sema::BuildMemberReferenceExpr(), buildMemcpyForAssignmentOp(), BuildNonArrayForRange(), clang::Sema::BuildObjCAtThrowStmt(), clang::Sema::BuildObjCBridgedCast(), clang::Sema::BuildObjCSubscriptExpression(), BuildRecoveryCallExpr(), clang::Sema::BuildStaticAssertDeclaration(), clang::Sema::BuildUnaryOp(), clang::Sema::CanPerformCopyInitialization(), captureThis(), clang::Sema::CheckAdditionOperands(), checkArgsForPlaceholders(), checkArithmeticOrEnumeralCompare(), checkArithmeticOrEnumeralThreeWayCompare(), CheckArrayDesignatorSyntax(), CheckArrow(), clang::Sema::CheckAssignmentOperands(), clang::Sema::CheckBitwiseOperands(), checkBuiltinArgument(), CheckCommaOperands(), clang::Sema::CheckConditionalOperands(), CheckConvertedConstantExpression(), clang::Sema::CheckCXXDefaultArgExpr(), clang::Sema::CheckDestructor(), CheckIncrementDecrementOperand(), CheckIndirectionOperand(), clang::Sema::CheckMessageArgumentTypes(), clang::Sema::CheckMultiplyDivideOperands(), CheckObjCCollectionLiteralElement(), clang::Sema::CheckObjCForCollectionOperand(), clang::Sema::CheckPointerToMemberOperands(), clang::Sema::CheckRemainderOperands(), clang::Sema::CheckShiftOperands(), clang::Sema::CheckSingleAssignmentConstraints(), clang::Sema::CheckSubtractionOperands(), clang::Sema::CheckTemplateArgument(), clang::Sema::checkUnknownAnyArg(), clang::Sema::CheckVarTemplateId(), clang::Sema::CheckVectorOperands(), checkVectorShift(), clang::Sema::CodeCompleteMemberReferenceExpr(), clang::Sema::CodeCompleteObjCInstanceMessage(), CollectFieldInitializer(), ConvertForConditional(), CopyObject(), clang::Sema::CreateBuiltinArraySubscriptExpr(), clang::Sema::CreateBuiltinBinOp(), clang::Sema::CreateGenericSelectionExpr(), clang::Sema::CXXCheckConditionalOperands(), clang::Sema::DeduceAutoType(), clang::Sema::DefineImplicitLambdaToBlockPointerConversion(), DiagnoseBadFunctionCast(), DiagnoseCastQual(), diagnoseDynamicExceptionSpecification(), diagnoseNoViableConversion(), EvaluateArrayTypeTrait(), EvaluateBinaryTypeTrait(), FindConditionalOverload(), FinishOverloadedCallExpr(), getCastAwayConstnessCastKind(), getMissingDeclaratorIdLoc(), getVarTemplateSpecialization(), HandleAddressSpaceTypeAttribute(), HandleExtVectorTypeAttr(), HandleVectorSizeAttr(), clang::Sema::IgnoredValueConversions(), clang::TemplateDeclInstantiator::InstantiateEnumDefinition(), clang::Sema::InstantiateVariableInitializer(), IsBuiltInOrStandardCXX11Attribute(), isNonNegativeIntegerValue(), isNullPointerValueTemplateArgument(), isTupleLike(), isValidOrderingForOp(), LookupMethodInReceiverType(), clang::Sema::MaybeCreateExprWithCleanups(), clang::Sema::mightBeIntendedToBeTemplateName(), OpenCLArithmeticConversions(), OpenCLCheckVectorConditional(), clang::Parser::ParseConstraintExpression(), parseDeclareSimdClauses(), clang::Parser::ParseExpression(), clang::Parser::ParseOpenMPParensExpr(), clang::Parser::ParseTopLevelDecl(), clang::Parser::ParseUnqualifiedId(), clang::InitializationSequence::Perform(), PerformConstructorInitialization(), clang::Sema::PerformContextualImplicitConversion(), clang::Sema::PerformCopyInitialization(), clang::Sema::PerformImplicitConversion(), clang::Sema::PerformMoveOrCopyInitialization(), PragmaLoopHintString(), clang::TreeTransform< Derived >::RebuildCXXOperatorCallExpr(), clang::TreeTransform< Derived >::RebuildDesignatedInitExpr(), clang::TreeTransform< Derived >::RebuildObjCForCollectionStmt(), clang::TreeTransform< Derived >::RebuildPackExpansion(), clang::TreeTransform< Derived >::RebuildUnaryExprOrTypeTrait(), recordConversion(), resolveBuiltinNewDeleteOverload(), clang::Sema::SetIvarInitializers(), clang::Sema::SubstDefaultTemplateArgumentIfAvailable(), takeDeclAttributes(), clang::TreeTransform< Derived >::TransformAddressOfOperand(), clang::TreeTransform< Derived >::TransformCompoundStmt(), clang::TreeTransform< Derived >::TransformCondition(), clang::TreeTransform< Derived >::TransformCXXNamedCastExpr(), clang::TreeTransform< Derived >::TransformExceptionSpec(), clang::Parser::TryAnnotateTypeOrScopeToken(), TryReinterpretCast(), TryStaticCast(), TryStaticImplicitCast(), TypeTraitArity(), clang::Sema::UsualArithmeticConversions(), clang::Sema::VerifyBitField(), and clang::TemplateDeclInstantiator::VisitVarDecl().
|
inline |
Definition at line 172 of file Ownership.h.
Referenced by clang::Sema::ActOnCaseStmt(), and checkOpenMPLoop().
|
inline |
Definition at line 171 of file Ownership.h.
Referenced by clang::Sema::ActOnCastExpr(), clang::Sema::ActOnConditionalOp(), clang::Sema::ActOnConstantExpression(), clang::Sema::ActOnObjCAtSynchronizedOperand(), clang::Sema::ActOnOpenMPDeclareReductionType(), clang::Sema::ActOnOpenMPLinearClause(), clang::Sema::ActOnOpenMPRegionEnd(), addConstexprToLambdaDeclSpecifier(), addContextSensitiveTypeNullability(), clang::Sema::AddInitializerToDecl(), attemptRecovery(), attributeParsedArgsUnevaluated(), clang::Sema::BuildBinOp(), buildCaptureDecl(), buildCounterInit(), buildCounterUpdate(), clang::Sema::BuildMemberReferenceExpr(), buildMemcpyForAssignmentOp(), clang::Sema::BuildMemInitializer(), CheckArrayDesignatorSyntax(), clang::Sema::CheckConditionalOperands(), clang::Sema::CheckObjCForCollectionOperand(), checkOpenMPLoop(), clang::Sema::CheckPlaceholderExpr(), clang::Sema::checkUnknownAnyCast(), clang::Sema::CreateBuiltinBinOp(), DiagnoseBadFunctionCast(), FinishForRangeVarDecl(), getMissingDeclaratorIdLoc(), clang::Sema::getOpenMPCapturedExpr(), clang::Sema::LookupInlineAsmIdentifier(), clang::Parser::ParseConstraintExpression(), parseDeclareSimdClauses(), clang::Parser::ParseMSAsmIdentifier(), clang::Parser::ParseOpenMPVarList(), clang::Sema::SubstParmVarDecl(), takeDeclAttributes(), clang::TreeTransform< Derived >::TransformParenDependentScopeDeclRefExpr(), clang::Parser::TryAnnotateTypeOrScopeTokenAfterScopeSpec(), and TryReinterpretCast().
|
inline |
Definition at line 179 of file Ownership.h.
|
inline |
Definition at line 177 of file Ownership.h.