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