72 references to IsOptional
Microsoft.CodeAnalysis.CSharp (13)
Binder\Binder_Await.cs (1)
484return parameter.IsOptional;
Binder\Binder_Expressions.cs (2)
3806if (parameter.IsOptional || 9980return !parameter.IsOptional && !parameter.IsParams;
Binder\Binder_Invocation.cs (1)
1603Debug.Assert(parameter.IsOptional);
Binder\ForEachLoopBinder.cs (1)
1119if (getEnumeratorMethod?.Parameters[0].IsOptional == false)
Binder\Semantics\OverloadResolution\OverloadResolution_ArgsToParameters.cs (1)
401return !isMethodGroupConversion && parameter.IsOptional;
Lowering\LocalRewriter\LocalRewriter_UsingStatement.cs (2)
500Debug.Assert(method.Parameters.AsSpan()[1..].All(static (p) => (p.IsOptional || p.IsParams) && p.RefKind is RefKind.None or RefKind.In or RefKind.RefReadOnlyParameter)); 504Debug.Assert(method.Parameters.All(p => p.IsOptional || p.IsParams));
Symbols\Attributes\SourceAttributeData.cs (1)
152Debug.Assert(this.AttributeConstructor.Parameters[parameterIndex].IsOptional ||
Symbols\ParameterSymbol.cs (2)
196/// <see cref="IsOptional"/> to determine if the parameter will be considered optional by 216return IsOptional && ExplicitDefaultConstantValue != null;
Symbols\PublicModel\ParameterSymbol.cs (1)
71bool IParameterSymbol.IsOptional => _underlying.IsOptional;
Symbols\Source\SourceComplexParameterSymbol.cs (1)
904if (this.RefKind == RefKind.RefReadOnlyParameter && this.IsOptional && this.ParameterSyntax.Default is null)
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (2)
CodeGen\CodeGenOverridingAndHiding.cs (2)
4115Assert.False(parameterA.IsOptional, "ParameterArray param cannot be optional"); 4124Assert.False(parameterB.IsOptional, "ParameterArray param cannot be optional");
Microsoft.CodeAnalysis.CSharp.Emit3.UnitTests (7)
Attributes\AttributeTests_Conditional.cs (1)
633Assert.True(paramY.IsOptional);
Attributes\AttributeTests_WellKnownAttributes.cs (6)
873Assert.False(ps[0].IsOptional); 903Assert.False(ps[0].IsOptional); 932Assert.True(ps[0].IsOptional); 1021Assert.True(ps[0].IsOptional); 1065Assert.True(ps[0].IsOptional); 9746Assert.False(param.IsOptional);
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (34)
Semantics\NamedAndOptionalTests.cs (34)
2052Assert.False(parameters[0].IsOptional); 2058Assert.True(parameters[1].IsOptional); 2064Assert.True(parameters[2].IsOptional); 2070Assert.True(parameters[3].IsOptional); 2076Assert.False(parameters[4].IsOptional); 2083Assert.False(parameters[5].IsOptional); 2090Assert.True(parameters[6].IsOptional); 2096Assert.True(parameters[7].IsOptional); 2134Assert.False(parameters[0].IsOptional); 2140Assert.True(parameters[1].IsOptional); 2146Assert.True(parameters[2].IsOptional); 2185Assert.False(parameters[0].IsOptional); 2191Assert.True(parameters[1].IsOptional); 2197Assert.True(parameters[2].IsOptional); 2203Assert.True(parameters[3].IsOptional); 2209Assert.False(parameters[4].IsOptional); 2216Assert.True(parameters[5].IsOptional); 2222Assert.False(parameters[6].IsOptional); 2229Assert.True(parameters[7].IsOptional); 2268Assert.False(parameters[0].IsOptional); 2274Assert.True(parameters[1].IsOptional); 2280Assert.True(parameters[2].IsOptional); 2286Assert.True(parameters[3].IsOptional); 2292Assert.False(parameters[4].IsOptional); 2299Assert.False(parameters[5].IsOptional); 2306Assert.True(parameters[6].IsOptional); 2312Assert.True(parameters[7].IsOptional); 2350Assert.False(parameters[0].IsOptional); 2356Assert.True(parameters[1].IsOptional); 2362Assert.True(parameters[2].IsOptional); 2368Assert.False(parameters[3].IsOptional); 2375Assert.False(parameters[4].IsOptional); 2382Assert.True(parameters[5].IsOptional); 2388Assert.True(parameters[6].IsOptional);
Microsoft.CodeAnalysis.CSharp.Symbol.UnitTests (16)
Symbols\CompilationCreationTests.cs (2)
2356Assert.False(x1.IsOptional); 2369Assert.True(x4.IsOptional);
Symbols\Metadata\MetadataMemberTests.cs (2)
279Assert.False(p4.IsOptional); 376Assert.False(p2.IsOptional);
Symbols\Metadata\PE\LoadingMethods.cs (4)
117Assert.False(basicC1_M1.Parameters[0].IsOptional); 121Assert.True(basicC1_M2.Parameters[0].IsOptional); 124Assert.True(basicC1_M3.Parameters[0].IsOptional); 127Assert.True(basicC1_M4.Parameters[0].IsOptional);
Symbols\PEParameterSymbolTests.cs (5)
110Assert.False(x.IsOptional); 114Assert.False(y.IsOptional); 118Assert.True(z.IsOptional); 125Assert.False(x1.IsOptional); 132Assert.True(y2.IsOptional);
Symbols\TypeTests.cs (3)
1574Assert.True(paras[0].IsOptional); 1622Assert.False(paras[0].IsOptional); 1623Assert.True(paras[1].IsOptional);