341 references to ThreeState
Microsoft.CodeAnalysis (45)
InternalUtilities\ThreeState.cs (8)
21public static ThreeState ToThreeState(this bool value) 23return value ? ThreeState.True : ThreeState.False; 26public static bool HasValue(this ThreeState value) 28return value != ThreeState.Unknown; 31public static bool Value(this ThreeState value) 33Debug.Assert(value != ThreeState.Unknown); 34return value == ThreeState.True;
MetadataReader\PEAssembly.cs (9)
43/// Using <see cref="ThreeState"/> for atomicity. 45private ThreeState _lazyContainsNoPiaLocalTypes; 47private ThreeState _lazyDeclaresTheObjectClass; 117if (_lazyContainsNoPiaLocalTypes == ThreeState.Unknown) 123_lazyContainsNoPiaLocalTypes = ThreeState.True; 128_lazyContainsNoPiaLocalTypes = ThreeState.False; 131return _lazyContainsNoPiaLocalTypes == ThreeState.True; 192if (_lazyDeclaresTheObjectClass == ThreeState.Unknown) 198return _lazyDeclaresTheObjectClass == ThreeState.True;
MetadataReader\PEModule.cs (12)
75/// Using <see cref="ThreeState"/> as a type for atomicity. 77private ThreeState _lazyContainsNoPiaLocalTypes; 160_lazyContainsNoPiaLocalTypes = includeEmbeddedInteropTypes ? ThreeState.False : ThreeState.Unknown; 2606if (_lazyContainsNoPiaLocalTypes == ThreeState.False) 2635_lazyContainsNoPiaLocalTypes = ThreeState.True; 3182Debug.Assert(_lazyContainsNoPiaLocalTypes != ThreeState.True); 3183_lazyContainsNoPiaLocalTypes = ThreeState.False; 3188if (_lazyContainsNoPiaLocalTypes == ThreeState.Unknown) 3198_lazyContainsNoPiaLocalTypes = ThreeState.True; 3211_lazyContainsNoPiaLocalTypes = ThreeState.False; 3214return _lazyContainsNoPiaLocalTypes == ThreeState.True;
ReferenceManager\CommonReferenceManager.State.cs (4)
85private ThreeState _lazyHasCircularReference; 219return _lazyHasCircularReference == ThreeState.True; 352Debug.Assert(_lazyHasCircularReference == ThreeState.Unknown); 373Debug.Assert(_lazyHasCircularReference != ThreeState.Unknown);
Symbols\AnonymousTypes\CommonAnonymousTypeManager.cs (4)
15private ThreeState _templatesSealed = ThreeState.False; 22get { return _templatesSealed == ThreeState.True; } 27_templatesSealed = ThreeState.True;
Symbols\Attributes\CommonAssemblyWellKnownAttributeData.cs (2)
39private ThreeState _assemblyDelaySignAttributeSetting; 40public ThreeState AssemblyDelaySignAttributeSetting
Symbols\INamedTypeSymbolInternal.cs (6)
33public static (ThreeState isManaged, bool hasGenerics) IsManagedTypeHelper(INamedTypeSymbolInternal type) 63return (ThreeState.False, false); 65return (ThreeState.True, false); 76return (ThreeState.False, hasGenerics); 78return (ThreeState.Unknown, hasGenerics); 80return (ThreeState.True, hasGenerics);
Microsoft.CodeAnalysis.CSharp (294)
Binder\Binder.ValueChecks.cs (20)
127public ThreeState ReceiverIsSubjectToCloning; 146public static MethodInvocationInfo FromCallParts(MethodSymbol method, BoundExpression receiver, ImmutableArray<BoundExpression> args, ThreeState receiverIsSubjectToCloning) 166ReceiverIsSubjectToCloning = ThreeState.Unknown, 195ReceiverIsSubjectToCloning = ThreeState.Unknown, 211ReceiverIsSubjectToCloning = ThreeState.Unknown, 228ReceiverIsSubjectToCloning = ThreeState.Unknown, 242ReceiverIsSubjectToCloning = ThreeState.Unknown, 255ReceiverIsSubjectToCloning = ThreeState.Unknown, 268ReceiverIsSubjectToCloning = ThreeState.Unknown, 283ReceiverIsSubjectToCloning = ThreeState.Unknown, 300ReceiverIsSubjectToCloning = method.IsStatic ? ThreeState.Unknown : ThreeState.False, 314ReceiverIsSubjectToCloning = ThreeState.Unknown, 2481ReceiverIsSubjectToCloning = ThreeState.Unknown 2644Debug.Assert(methodInvocationInfo.ReceiverIsSubjectToCloning != ThreeState.Unknown); 2646if (methodInvocationInfo.ReceiverIsSubjectToCloning == ThreeState.True) 2991receiverlessInvocationInfo = methodInvocationInfo with { Receiver = null, ReceiverIsSubjectToCloning = ThreeState.Unknown }; 3056adjustedMethodInvocationInfo = adjustedMethodInvocationInfo with { Receiver = null, ReceiverIsSubjectToCloning = ThreeState.Unknown }; 3179receiverlessInvocationInfo = methodInvocationInfo with { Receiver = null, ReceiverIsSubjectToCloning = ThreeState.Unknown }; 4907ReceiverIsSubjectToCloning = ThreeState.Unknown,
Binder\Binder_Attributes.cs (1)
583lvalue = new BoundPropertyAccess(nameSyntax, receiverOpt: null, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, propertySymbol, autoPropertyAccessorKind: AccessorKind.Unknown, resultKind, namedArgumentType);
Binder\Binder_Await.cs (2)
384initialBindingReceiverIsSubjectToCloning: ThreeState.False, 525initialBindingReceiverIsSubjectToCloning: ThreeState.False,
Binder\Binder_Expressions.cs (4)
10411ThreeState argIsIndexNotRange = 10412TypeSymbol.Equals(argType, Compilation.GetWellKnownType(WellKnownType.System_Index), TypeCompareKind.ConsiderEverything) ? ThreeState.True : 10413TypeSymbol.Equals(argType, Compilation.GetWellKnownType(WellKnownType.System_Range), TypeCompareKind.ConsiderEverything) ? ThreeState.False : 10414ThreeState.Unknown;
Binder\Binder_Invocation.cs (4)
1385internal ThreeState ReceiverIsSubjectToCloning(BoundExpression? receiver, PropertySymbol property) 1392return ThreeState.False; 1398internal ThreeState ReceiverIsSubjectToCloning(BoundExpression? receiver, MethodSymbol method) 1402return ThreeState.False;
Binder\Binder_Patterns.cs (1)
378lengthAccess = new BoundPropertyAccess(node, receiverPlaceholder, initialBindingReceiverIsSubjectToCloning: ThreeState.False, lengthProperty, autoPropertyAccessorKind: AccessorKind.Unknown, LookupResultKind.Viable, lengthProperty.Type) { WasCompilerGenerated = true };
Binder\Binder_Statements.cs (3)
1616var methodInvocationInfo = MethodInvocationInfo.FromCallParts(propSet, receiver, args: [op2], receiverIsSubjectToCloning: ThreeState.Unknown); 4006initialBindingReceiverIsSubjectToCloning: ThreeState.False, 4054initialBindingReceiverIsSubjectToCloning: ThreeState.False,
Binder\NameofBinder.cs (1)
27private ThreeState _lazyIsNameofOperator;
Binder\RefSafetyAnalysis.cs (3)
855Debug.Assert(node.InitialBindingReceiverIsSubjectToCloning != ThreeState.Unknown); 1034Debug.Assert(node.InitialBindingReceiverIsSubjectToCloning != ThreeState.Unknown); 1040Debug.Assert(node.InitialBindingReceiverIsSubjectToCloning != ThreeState.Unknown);
Binder\Semantics\Conversions\ConversionsBase.cs (5)
3126var quickResult = HasVariantConversionQuick(source, destination); 3136private ThreeState HasVariantConversionQuick(NamedTypeSymbol source, NamedTypeSymbol destination) 3143return ThreeState.True; 3149return ThreeState.False; 3152return ThreeState.Unknown;
Binder\Semantics\OverloadResolution\AnalyzedArguments.cs (4)
19private ThreeState _lazyHasDynamicArgument; 34_lazyHasDynamicArgument = ThreeState.Unknown; 103_lazyHasDynamicArgument = ThreeState.True; 108_lazyHasDynamicArgument = ThreeState.False;
Binder\Semantics\OverloadResolution\OverloadResolutionResult.cs (11)
29private ThreeState _bestResultState; 41_bestResultState = ThreeState.Unknown; 54return _bestResultState == ThreeState.True && _bestResult.Result.IsValid; 68Debug.Assert(_bestResultState == ThreeState.True && _bestResult.Result.IsValid); 93Debug.Assert(_bestResultState == ThreeState.True); 165private static ThreeState TryGetBestResult(ArrayBuilder<MemberResolutionResult<TMember>> allResults, out MemberResolutionResult<TMember> best) 168ThreeState haveBest = ThreeState.False; 174if (haveBest == ThreeState.True) 178return ThreeState.False; 181haveBest = ThreeState.True;
BoundTree\Constructors.cs (11)
89ThreeState initialBindingReceiverIsSubjectToCloning, 107ThreeState initialBindingReceiverIsSubjectToCloning, 149initialBindingReceiverIsSubjectToCloning: ThreeState.False, 170public BoundCall Update(BoundExpression? receiverOpt, ThreeState initialBindingReceiverIsSubjectToCloning, MethodSymbol method, ImmutableArray<BoundExpression> arguments) 175public static BoundCall Synthesized(SyntaxNode syntax, BoundExpression? receiverOpt, ThreeState initialBindingReceiverIsSubjectToCloning, MethodSymbol method) 180public static BoundCall Synthesized(SyntaxNode syntax, BoundExpression? receiverOpt, ThreeState initialBindingReceiverIsSubjectToCloning, MethodSymbol method, BoundExpression arg0) 185public static BoundCall Synthesized(SyntaxNode syntax, BoundExpression? receiverOpt, ThreeState initialBindingReceiverIsSubjectToCloning, MethodSymbol method, BoundExpression arg0, BoundExpression arg1) 190public static BoundCall Synthesized(SyntaxNode syntax, BoundExpression? receiverOpt, ThreeState initialBindingReceiverIsSubjectToCloning, MethodSymbol method, ImmutableArray<BoundExpression> arguments, ImmutableArray<RefKind> argumentRefKindsOpt = default) 284initialBindingReceiverIsSubjectToCloning: ThreeState.False, 300ThreeState initialBindingReceiverIsSubjectToCloning, 315ThreeState initialBindingReceiverIsSubjectToCloning,
CodeGen\Optimizer.cs (1)
1198return node.Update(receiver, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, node.Method, rewrittenArguments);
Compilation\CSharpCompilation.cs (3)
132private ThreeState _lazyEmitNullablePublicOnly; 371SourceMethodSymbol { IsRuntimeAsyncEnabledInMethod: ThreeState.True } => true, 372SourceMethodSymbol { IsRuntimeAsyncEnabledInMethod: ThreeState.False } => false,
Compiler\MethodBodySynthesizer.cs (7)
46initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 289initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 302initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 400initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 465initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 483initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 550initialBindingReceiverIsSubjectToCloning: ThreeState.False,
Generated\BoundNodes.xml.Generated.cs (9)
6166public BoundCall(SyntaxNode syntax, BoundExpression? receiverOpt, ThreeState initialBindingReceiverIsSubjectToCloning, MethodSymbol method, ImmutableArray<BoundExpression> arguments, ImmutableArray<string?> argumentNamesOpt, ImmutableArray<RefKind> argumentRefKindsOpt, bool isDelegateCall, bool expanded, bool invokedAsExtensionMethod, ImmutableArray<int> argsToParamsOpt, BitVector defaultArguments, LookupResultKind resultKind, ImmutableArray<MethodSymbol> originalMethodsOpt, TypeSymbol type, bool hasErrors = false) 6195public ThreeState InitialBindingReceiverIsSubjectToCloning { get; } 6211public BoundCall Update(BoundExpression? receiverOpt, ThreeState initialBindingReceiverIsSubjectToCloning, MethodSymbol method, ImmutableArray<BoundExpression> arguments, ImmutableArray<string?> argumentNamesOpt, ImmutableArray<RefKind> argumentRefKindsOpt, bool isDelegateCall, bool expanded, bool invokedAsExtensionMethod, ImmutableArray<int> argsToParamsOpt, BitVector defaultArguments, LookupResultKind resultKind, ImmutableArray<MethodSymbol> originalMethodsOpt, TypeSymbol type) 7364public BoundPropertyAccess(SyntaxNode syntax, BoundExpression? receiverOpt, ThreeState initialBindingReceiverIsSubjectToCloning, PropertySymbol propertySymbol, AccessorKind autoPropertyAccessorKind, LookupResultKind resultKind, TypeSymbol type, bool hasErrors = false) 7380public ThreeState InitialBindingReceiverIsSubjectToCloning { get; } 7388public BoundPropertyAccess Update(BoundExpression? receiverOpt, ThreeState initialBindingReceiverIsSubjectToCloning, PropertySymbol propertySymbol, AccessorKind autoPropertyAccessorKind, LookupResultKind resultKind, TypeSymbol type) 7438public BoundIndexerAccess(SyntaxNode syntax, BoundExpression? receiverOpt, ThreeState initialBindingReceiverIsSubjectToCloning, PropertySymbol indexer, ImmutableArray<BoundExpression> arguments, ImmutableArray<string?> argumentNamesOpt, ImmutableArray<RefKind> argumentRefKindsOpt, bool expanded, AccessorKind accessorKind, ImmutableArray<int> argsToParamsOpt, BitVector defaultArguments, ImmutableArray<PropertySymbol> originalIndexersOpt, TypeSymbol type, bool hasErrors = false) 7461public ThreeState InitialBindingReceiverIsSubjectToCloning { get; } 7475public BoundIndexerAccess Update(BoundExpression? receiverOpt, ThreeState initialBindingReceiverIsSubjectToCloning, PropertySymbol indexer, ImmutableArray<BoundExpression> arguments, ImmutableArray<string?> argumentNamesOpt, ImmutableArray<RefKind> argumentRefKindsOpt, bool expanded, AccessorKind accessorKind, ImmutableArray<int> argsToParamsOpt, BitVector defaultArguments, ImmutableArray<PropertySymbol> originalIndexersOpt, TypeSymbol type)
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.cs (2)
411initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 427initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown,
Lowering\LocalRewriter\LocalRewriter_BinaryOperator.cs (10)
88initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 781initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 808initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 918initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 950initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 1859BoundExpression callX_GetValueOrDefault = BoundCall.Synthesized(syntax, boundTempX, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, getValueOrDefaultX); 1861BoundExpression callY_GetValueOrDefault = BoundCall.Synthesized(syntax, boundTempY, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, getValueOrDefaultY); 2024return BoundCall.Synthesized(syntax, receiverOpt: null, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, method, loweredLeft, loweredRight); 2050: (BoundExpression)BoundCall.Synthesized(syntax, receiverOpt: null, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, method, loweredLeft, loweredRight); 2085return BoundCall.Synthesized(syntax, receiverOpt: null, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, method, loweredLeft, loweredRight);
Lowering\LocalRewriter\LocalRewriter_Call.cs (3)
494initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 511initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 1522initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown,
Lowering\LocalRewriter\LocalRewriter_CollectionExpression.cs (1)
558initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown,
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (3)
48initialBindingReceiverIsSubjectToCloning: ThreeState.False, 69initialBindingReceiverIsSubjectToCloning: ThreeState.False, 454initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown,
Lowering\LocalRewriter\LocalRewriter_Conversion.cs (7)
1090value = BoundCall.Synthesized(syntax, rewrittenOperand, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, get_Value); 1190BoundCall.Synthesized(syntax, boundTemp, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, getValueOrDefault), 1236initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 1381initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 1450BoundCall callGetValueOrDefault = BoundCall.Synthesized(syntax, boundTemp, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, getValueOrDefault); 1458initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 1754return BoundCall.Synthesized(syntax, receiverOpt: null, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, method, operand);
Lowering\LocalRewriter\LocalRewriter_Event.cs (1)
259initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown,
Lowering\LocalRewriter\LocalRewriter_ForEachStatement.cs (6)
205initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 449BoundExpression disposeCall = BoundCall.Synthesized(syntax: forEachSyntax, receiverOpt: boundDisposableVar, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, method: disposeMethod); 711initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 720initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 1093BoundExpression currentDimensionUpperBound = BoundCall.Synthesized(forEachSyntax, boundArrayVar, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, getUpperBoundMethod, dimensionArgument); 1147BoundExpression currentDimensionLowerBound = BoundCall.Synthesized(forEachSyntax, boundArrayVar, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, getLowerBoundMethod, dimensionArgument);
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (3)
130initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 143initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 629receiver, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, indexerAccess.Indexer, rewrittenArguments,
Lowering\LocalRewriter\LocalRewriter_LockStatement.cs (4)
58initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 111initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 157initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 206initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown,
Lowering\LocalRewriter\LocalRewriter_NullCoalescingAssignmentOperator.cs (2)
116var tmp = _factory.StoreToTemp(BoundCall.Synthesized(leftOperand.Syntax, lhsRead, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, getValueOrDefault), 139var lhsReadHasValue = BoundCall.Synthesized(leftOperand.Syntax, lhsRead, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, hasValue);
Lowering\LocalRewriter\LocalRewriter_NullCoalescingOperator.cs (3)
142return BoundCall.Synthesized(rewrittenLeft.Syntax, rewrittenLeft, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, getValueOrDefault); 149return BoundCall.Synthesized(rewrittenLeft.Syntax, rewrittenLeft, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, getValueOrDefaultDefaultValue, rewrittenRight); 258rewrittenLeft = BoundCall.Synthesized(rewrittenLeft.Syntax, rewrittenLeft, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, getValueOrDefault);
Lowering\LocalRewriter\LocalRewriter_ObjectCreationExpression.cs (1)
353initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown,
Lowering\LocalRewriter\LocalRewriter_PropertyAccess.cs (5)
58oldNodeOpt.Update(rewrittenReceiverOpt, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, propertySymbol, autoPropertyAccessorKind: AccessorKind.Unknown, resultKind, type) : 59new BoundPropertyAccess(syntax, rewrittenReceiverOpt, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, propertySymbol, autoPropertyAccessorKind: AccessorKind.Unknown, resultKind, type); 86oldNodeOpt.Update(rewrittenReceiver, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, property, autoPropertyAccessorKind: AccessorKind.Unknown, LookupResultKind.Viable, property.Type) : 87new BoundPropertyAccess(syntax, rewrittenReceiver, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, property, autoPropertyAccessorKind: AccessorKind.Unknown, LookupResultKind.Viable, property.Type); 100initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown,
Lowering\LocalRewriter\LocalRewriter_StringConcat.cs (6)
196return BoundCall.Synthesized(originalSyntax, receiverOpt: null, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, method, finalArguments); 554args[i] = BoundCall.Synthesized(arg.Syntax, receiverOpt: null, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, stringImplicitConversionToReadOnlySpan, arg); 558var concatCall = BoundCall.Synthesized(syntax, receiverOpt: null, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, spanConcat, args.ToImmutableAndFree()); 693return BoundCall.Synthesized(syntax, expr, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, structToStringMethod); 718return BoundCall.Synthesized(syntax, expr, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, objectToStringMethod); 749initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown,
Lowering\LocalRewriter\LocalRewriter_StringInterpolation.cs (1)
227? BoundCall.Synthesized(syntax, result.HandlerTemp, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, toStringAndClear)
Lowering\LocalRewriter\LocalRewriter_UnaryOperator.cs (12)
120initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 170return BoundCall.Synthesized(syntax, receiverOpt: null, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, method, loweredOperand); 211BoundExpression call_GetValueOrDefault = BoundCall.Synthesized(syntax, boundTemp, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, getValueOrDefault); 417initialBindingReceiverIsSubjectToCloning: ThreeState.False, 444initialBindingReceiverIsSubjectToCloning: ThreeState.False, 525return BoundCall.Synthesized(syntax, boundTemp, initialBindingReceiverIsSubjectToCloning: ThreeState.False, operatorMethod, rightOpt is null ? [] : [rightOpt]); 813initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 837BoundExpression call_GetValueOrDefault = BoundCall.Synthesized(syntax, boundTemp, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, getValueOrDefault); 843initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 987return BoundCall.Synthesized(syntax, receiverOpt: null, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, method, operand); 1002BoundExpression getValueCall = BoundCall.Synthesized(syntax, operand, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, getValueOrDefault); 1004BoundExpression methodCall = BoundCall.Synthesized(syntax, receiverOpt: null, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, method, getValueCall);
Lowering\LocalRewriter\LocalRewriter_UsingStatement.cs (1)
365disposedExpression = BoundCall.Synthesized(resourceSyntax, local, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, getValueOrDefault);
Lowering\MethodToClassRewriter.cs (2)
93return node.Update(rewrittenReceiver, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, rewrittenPropertySymbol, node.AutoPropertyAccessorKind, node.ResultKind, VisitType(node.Type)); 118initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown,
Lowering\SpillSequenceSpiller.cs (3)
453initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 467initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 1081return UpdateExpression(builder, node.Update(receiver, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, node.Method, arguments));
Lowering\SyntheticBoundNodeFactory.cs (3)
880Syntax, receiver, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, method, args, 921Syntax, receiver, initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, method, args, 1812initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown,
Symbols\Attributes\AttributeData.cs (4)
25private ThreeState _lazyIsSecurityAttribute = ThreeState.Unknown; 99if (_lazyIsSecurityAttribute == ThreeState.Unknown) 120_lazyIsSecurityAttribute = ThreeState.False;
Symbols\Attributes\PEAttributeData.cs (8)
26private ThreeState _lazyHasErrors = ThreeState.Unknown; 86_lazyHasErrors = ThreeState.True; 90_lazyHasErrors = ThreeState.True; 108_lazyHasErrors = ThreeState.True; 160if (_lazyHasErrors == ThreeState.Unknown) 165if (_lazyHasErrors == ThreeState.Unknown) 167_lazyHasErrors = ThreeState.False;
Symbols\Attributes\WellKnownAttributeData\MethodWellKnownAttributeData.cs (2)
153private ThreeState _runtimeAsyncMethodGenerationSetting; 154public ThreeState RuntimeAsyncMethodGenerationSetting
Symbols\BaseTypeAnalysis.cs (5)
149var definitelyManaged = isManaged == ThreeState.True; 150if (isManaged == ThreeState.Unknown) 233case ThreeState.True: 236case ThreeState.False: 239case ThreeState.Unknown:
Symbols\Metadata\PE\PENamedTypeSymbol.cs (17)
143internal ThreeState lazyContainsExtensionMethods; 144internal ThreeState lazyIsByRefLike; 145internal ThreeState lazyIsReadOnly; 149internal ThreeState lazyHasEmbeddedAttribute = ThreeState.Unknown; 150internal ThreeState lazyHasCompilerLoweringPreserveAttribute = ThreeState.Unknown; 151internal ThreeState lazyHasInterpolatedStringHandlerAttribute = ThreeState.Unknown; 152internal ThreeState lazyHasRequiredMembers = ThreeState.Unknown; 1990var contains = ThreeState.False; 2690var isByRefLike = ThreeState.False; 2739var isReadOnly = ThreeState.False;
Symbols\Metadata\PE\PETypeParameterSymbol.cs (1)
42private ThreeState _lazyHasIsUnmanagedConstraint;
Symbols\ObsoleteAttributeHelpers.cs (8)
59private static ThreeState GetObsoleteContextState(Symbol symbol, bool forceComplete, Func<Symbol, ThreeState> getStateFromSymbol) 78var state = getStateFromSymbol(symbol); 79if (state != ThreeState.False) 95return ThreeState.False; 130static ObsoleteDiagnosticKind getDiagnosticKind(Symbol containingMember, bool forceComplete, Func<Symbol, ThreeState> getStateFromSymbol) 134case ThreeState.False: 136case ThreeState.True:
Symbols\Source\SourceAssemblySymbol.cs (12)
89private ThreeState _lazyContainsExtensionMethods; 321private ThreeState AssemblyDelaySignAttributeSetting 325var defaultValue = ThreeState.Unknown; 326var fieldValue = defaultValue; 771ThreeState assemblyDelaySignAttributeSetting = this.AssemblyDelaySignAttributeSetting; 772if (_compilation.Options.DelaySign.HasValue && (assemblyDelaySignAttributeSetting != ThreeState.Unknown) && 773(DeclaringCompilation.Options.DelaySign.Value != (assemblyDelaySignAttributeSetting == ThreeState.True))) 778if (_compilation.Options.PublicSign && assemblyDelaySignAttributeSetting == ThreeState.True) 886return (this.AssemblyDelaySignAttributeSetting == ThreeState.True); 2395arguments.GetOrCreateData<CommonAssemblyWellKnownAttributeData>().AssemblyDelaySignAttributeSetting = (bool)attribute.CommonConstructorArguments[0].ValueInternal ? ThreeState.True : ThreeState.False;
Symbols\Source\SourceComplexParameterSymbol.cs (8)
37private ThreeState _lazyHasOptionalAttribute; 58_lazyHasOptionalAttribute = ThreeState.Unknown; 627_lazyHasOptionalAttribute = ThreeState.True; 633if (_lazyHasOptionalAttribute == ThreeState.Unknown) 635_lazyHasOptionalAttribute = ThreeState.False; 787Debug.Assert(_lazyHasOptionalAttribute == ThreeState.True); 1516if (_lazyHasOptionalAttribute == ThreeState.Unknown) 1538_lazyHasOptionalAttribute = ThreeState.False;
Symbols\Source\SourceEventSymbol.cs (2)
39private ThreeState _lazyIsWindowsRuntimeEvent = ThreeState.Unknown;
Symbols\Source\SourceMemberContainerSymbol.cs (8)
217private ThreeState _lazyContainsExtensionMethods; 218private ThreeState _lazyAnyMemberHasAttributes; 2602if (_lazyKnownCircularStruct == (int)ThreeState.Unknown) 2606Interlocked.CompareExchange(ref _lazyKnownCircularStruct, (int)ThreeState.False, (int)ThreeState.Unknown); 2613if (Interlocked.CompareExchange(ref _lazyKnownCircularStruct, value, (int)ThreeState.Unknown) == (int)ThreeState.Unknown) 2623return _lazyKnownCircularStruct == (int)ThreeState.True;
Symbols\Source\SourceMemberContainerSymbol_ImplementationChecks.cs (4)
949Debug.Assert(overridingMember.ObsoleteState != ThreeState.Unknown); 950Debug.Assert(leastOverriddenMember.ObsoleteState != ThreeState.Unknown); 952bool overridingMemberIsObsolete = overridingMember.ObsoleteState == ThreeState.True; 953bool leastOverriddenMemberIsObsolete = leastOverriddenMember.ObsoleteState == ThreeState.True;
Symbols\Source\SourceMethodSymbolWithAttributes.cs (4)
658? ThreeState.True 659: ThreeState.False; 671internal ThreeState IsRuntimeAsyncEnabledInMethod 672=> GetDecodedWellKnownAttributeData()?.RuntimeAsyncMethodGenerationSetting ?? ThreeState.Unknown;
Symbols\Source\SourceModuleSymbol.cs (10)
36private ThreeState _lazyContainsExplicitDefinitionOfNoPiaLocalTypes = ThreeState.Unknown; 50private ThreeState _lazyUseUpdatedEscapeRules; 51private ThreeState _lazyRequiresRefSafetyRulesAttribute; 156if (_lazyContainsExplicitDefinitionOfNoPiaLocalTypes == ThreeState.Unknown) 161Debug.Assert(_lazyContainsExplicitDefinitionOfNoPiaLocalTypes != ThreeState.Unknown); 162return _lazyContainsExplicitDefinitionOfNoPiaLocalTypes == ThreeState.True; 601if (_lazyRequiresRefSafetyRulesAttribute == ThreeState.Unknown) 707if (_lazyUseUpdatedEscapeRules == ThreeState.Unknown) 713return _lazyUseUpdatedEscapeRules == ThreeState.True;
Symbols\Source\SourceNamedTypeSymbol.cs (10)
36private ThreeState _lazyIsExplicitDefinitionOfNoPiaLocalType = ThreeState.Unknown; 97_lazyIsExplicitDefinitionOfNoPiaLocalType = ThreeState.False; 1204else if (_lazyIsExplicitDefinitionOfNoPiaLocalType == ThreeState.Unknown && attribute.IsTargetAttribute(AttributeDescription.TypeIdentifierAttribute)) 1206_lazyIsExplicitDefinitionOfNoPiaLocalType = ThreeState.True; 1250if (_lazyIsExplicitDefinitionOfNoPiaLocalType == ThreeState.Unknown) 1254if (_lazyIsExplicitDefinitionOfNoPiaLocalType == ThreeState.Unknown) 1256_lazyIsExplicitDefinitionOfNoPiaLocalType = ThreeState.False; 1260Debug.Assert(_lazyIsExplicitDefinitionOfNoPiaLocalType != ThreeState.Unknown); 1261return _lazyIsExplicitDefinitionOfNoPiaLocalType == ThreeState.True;
Symbols\Symbol.cs (10)
1411/// This property returns <see cref="ThreeState.Unknown"/> if the <see cref="ObsoleteAttribute"/> attribute hasn't been cracked yet. 1413internal ThreeState ObsoleteState 1422return ThreeState.False; 1424return ThreeState.Unknown; 1426return ThreeState.True; 1433/// This property returns <see cref="ThreeState.Unknown"/> if the attribute hasn't been cracked yet. 1435internal ThreeState ExperimentalState 1442return ThreeState.True; 1444return ThreeState.Unknown; 1446return ThreeState.False;
Symbols\Symbol_Attributes.cs (2)
958Debug.Assert(this.ObsoleteState != ThreeState.Unknown, "ObsoleteState should be true or false now."); 959Debug.Assert(this.ExperimentalState != ThreeState.Unknown, "ExperimentalState should be true or false now.");
Symbols\Synthesized\SynthesizedEntryPointSymbol.cs (5)
293private static BoundCall CreateParameterlessCall(CSharpSyntaxNode syntax, BoundExpression receiver, ThreeState receiverIsSubjectToCloning, MethodSymbol method) 364initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 390initialBindingReceiverIsSubjectToCloning: ThreeState.Unknown, 526var initializeCall = CreateParameterlessCall(syntax, scriptLocal, receiverIsSubjectToCloning: ThreeState.False, initializer); 645receiverIsSubjectToCloning: ThreeState.False,
Symbols\Synthesized\SynthesizedInteractiveInitializerMethod.cs (3)
24private ThreeState _lazyIsNullableAnalysisEnabled; 245if (_lazyIsNullableAnalysisEnabled == ThreeState.Unknown) 255return _lazyIsNullableAnalysisEnabled == ThreeState.True;
Symbols\Synthesized\SynthesizedStaticConstructor.cs (2)
15private ThreeState _lazyShouldEmit = ThreeState.Unknown;
Microsoft.CodeAnalysis.Scripting (1)
Hosting\CommonMemberFilter.cs (1)
23if (method.DeclaringType?.FullName.StartsWith("Submission#0").ToThreeState() == ThreeState.True)
Microsoft.CodeAnalysis.VisualBasic (1)
Symbols\Metadata\PE\PETypeParameterSymbol.vb (1)
40''' Actually stores <see cref="ThreeState"/>