clang
6.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 144 of file Ownership.h.
|
inline |
Definition at line 149 of file Ownership.h.
|
inline |
Definition at line 151 of file Ownership.h.
|
inline |
Definition at line 152 of file Ownership.h.
|
delete |
|
delete |
|
inline |
Definition at line 162 of file Ownership.h.
Referenced by clang::Sema::ActOnCallExpr(), clang::Sema::ActOnCapScopeReturnStmt(), clang::Sema::ActOnCastExpr(), clang::Sema::ActOnConditionalOp(), clang::Sema::ActOnConditionVariable(), clang::Sema::ActOnConstantExpression(), clang::Sema::ActOnCXXDelete(), clang::Sema::ActOnDecltypeExpression(), clang::Sema::ActOnDesignatedInitializer(), clang::Sema::ActOnDoStmt(), clang::Sema::ActOnExprStmt(), clang::Sema::ActOnFinishCXXInClassMemberInitializer(), clang::Sema::ActOnFinishFullExpr(), clang::Sema::ActOnForEachLValueExpr(), clang::Sema::ActOnInstanceMessage(), clang::Sema::ActOnObjCAtSynchronizedOperand(), clang::Sema::ActOnObjCBoolLiteral(), 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(), addConstexprToLambdaDeclSpecifier(), addContextSensitiveTypeNullability(), clang::Sema::AddInitializerToDecl(), clang::AssertSuccess(), attributeParsedArgsUnevaluated(), clang::Sema::BuildAnonymousStructUnionMemberReference(), clang::Sema::BuildBinOp(), clang::Sema::BuildCallToObjectOfClassType(), buildCapture(), buildCaptureDecl(), BuildCounterInit(), BuildCounterUpdate(), clang::Sema::BuildCXXFunctionalCastExpr(), clang::Sema::BuildCXXNoexceptExpr(), clang::Sema::BuildCXXTypeConstructExpr(), clang::Sema::BuildDelegatingInitializer(), 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(), clang::CoroutineStmtBuilder::buildParameterMoves(), BuildRecoveryCallExpr(), clang::Sema::BuildStaticAssertDeclaration(), buildVarDecl(), canConvertIntToOtherIntTy(), canConvertIntTyToFloatTy(), clang::Sema::CanPerformCopyInitialization(), captureThis(), clang::Sema::CheckAdditionOperands(), clang::Sema::CheckAddressOfOperand(), checkArgsForPlaceholders(), checkArithmeticNull(), CheckArrayDesignatorSyntax(), CheckArrow(), clang::Sema::CheckAssignmentConstraints(), clang::Sema::CheckAssignmentOperands(), clang::Sema::CheckBitwiseOperands(), checkBuiltinArgument(), CheckCommaOperands(), clang::Sema::CheckCompareOperands(), checkConditionalBlockPointerCompatibility(), checkConditionalNullPointer(), checkConditionalObjectPointersCompatibility(), clang::Sema::CheckConditionalOperands(), checkConditionalPointerCompatibility(), checkConditionalVoidType(), clang::Sema::CheckConditionVariable(), CheckConvertedConstantExpression(), CheckIncrementDecrementOperand(), CheckIndirectionOperand(), CheckKeyForObjCARCConversion(), 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::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(), clang::Sema::ImplicitExceptionSpecification::getExceptionSpec(), getMissingDeclaratorIdLoc(), clang::Sema::getOpenMPCapturedExpr(), getVarTemplateSpecialization(), HandleAddressSpaceTypeAttribute(), HandleExtVectorTypeAttr(), 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(), PragmaLoopHintString(), clang::Sema::PrepareScalarCast(), clang::TreeTransform< Derived >::RebuildCXXOperatorCallExpr(), clang::TreeTransform< Derived >::RebuildInitList(), clang::TreeTransform< Derived >::RebuildObjCForCollectionStmt(), clang::TreeTransform< Derived >::RebuildPackExpansion(), clang::TreeTransform< Derived >::RebuildShuffleVectorExpr(), recordConversion(), clang::Sema::ResolveAndFixSingleFunctionTemplateSpecialization(), 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(), clang::Sema::VerifyBitField(), and warnBracedScalarInit().
|
inline |
Definition at line 163 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(), clang::TemplateDeclInstantiator::VisitVarDecl(), and warnBracedScalarInit().
|
inline |
Definition at line 158 of file Ownership.h.
Referenced by clang::Sema::ActOnCallExpr(), clang::Sema::ActOnCapScopeReturnStmt(), clang::Sema::ActOnConditionVariable(), clang::Sema::ActOnCXXDelete(), clang::Sema::ActOnDecltypeExpression(), clang::Sema::ActOnDesignatedInitializer(), clang::Sema::ActOnDoStmt(), clang::Sema::ActOnExprStmt(), clang::Sema::ActOnFinishCXXInClassMemberInitializer(), clang::Sema::ActOnFinishFullExpr(), clang::Sema::ActOnForEachLValueExpr(), clang::Sema::ActOnInstanceMessage(), clang::Sema::ActOnObjCAtSynchronizedOperand(), 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(), attributeParsedArgsUnevaluated(), clang::Sema::BuildAnonymousStructUnionMemberReference(), clang::Sema::BuildBinOp(), BuildCounterUpdate(), clang::Sema::BuildCXXNoexceptExpr(), clang::Sema::BuildCXXTypeConstructExpr(), clang::Sema::BuildDelegatingInitializer(), 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(), clang::CoroutineStmtBuilder::buildParameterMoves(), BuildRecoveryCallExpr(), clang::Sema::BuildStaticAssertDeclaration(), buildVarDecl(), clang::Sema::CanPerformCopyInitialization(), captureThis(), clang::Sema::CheckAdditionOperands(), checkArgsForPlaceholders(), CheckArrayDesignatorExpr(), CheckArrayDesignatorSyntax(), CheckArrow(), clang::Sema::CheckAssignmentOperands(), clang::Sema::CheckBitwiseOperands(), checkBuiltinArgument(), CheckCommaOperands(), clang::Sema::CheckConditionalOperands(), CheckConvertedConstantExpression(), clang::Sema::CheckCXXDefaultArgExpr(), clang::Sema::CheckDestructor(), CheckIncrementDecrementOperand(), CheckIndirectionOperand(), CheckKeyForObjCARCConversion(), 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(), getMissingDeclaratorIdLoc(), getVarTemplateSpecialization(), HandleAddressSpaceTypeAttribute(), HandleExtVectorTypeAttr(), 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(), PragmaLoopHintString(), clang::TreeTransform< Derived >::RebuildCXXOperatorCallExpr(), clang::TreeTransform< Derived >::RebuildDesignatedInitExpr(), clang::TreeTransform< Derived >::RebuildInitList(), clang::TreeTransform< Derived >::RebuildObjCForCollectionStmt(), clang::TreeTransform< Derived >::RebuildPackExpansion(), clang::TreeTransform< Derived >::RebuildUnaryExprOrTypeTrait(), recordConversion(), 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(), clang::TemplateDeclInstantiator::VisitVarDecl(), and warnBracedScalarInit().
|
inline |
Definition at line 160 of file Ownership.h.
Referenced by CheckOpenMPLoop().
|
inline |
Definition at line 159 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(), attributeParsedArgsUnevaluated(), clang::Sema::BuildBinOp(), buildCaptureDecl(), 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(), TryReinterpretCast(), and TryStaticMemberPointerUpcast().
|
inline |
Definition at line 167 of file Ownership.h.
|
inline |
Definition at line 165 of file Ownership.h.