6 instantiations of ParameterIndex
illink (6)
src\runtime\src\tools\illink\src\ILLink.Shared\ParameterIndex.cs (6)
41
public static ParameterIndex operator ++(ParameterIndex val) => new
ParameterIndex
(val.Index + 1);
52
=> new
ParameterIndex
(x);
57
=> new
ParameterIndex
(left.Index + right.Index);
60
=> new
ParameterIndex
(left.Index - right.Index);
63
=> new
ParameterIndex
(left.Index + right);
66
=> new
ParameterIndex
(left.Index - right);
137 references to ParameterIndex
illink (137)
Linker.Dataflow\FlowAnnotations.cs (7)
630
method.TryGetParameter((
ParameterIndex
)parameterIndex)?.GetCustomAttributeProvider()!,
631
baseMethod.TryGetParameter((
ParameterIndex
)parameterIndex)?.GetCustomAttributeProvider()!,
669
ov.Override.GetParameter((
ParameterIndex
)parameterIndex).GetCustomAttributeProvider(),
670
ov.Base.GetParameter((
ParameterIndex
)parameterIndex).GetCustomAttributeProvider(),
883
return new MethodParameterValue(method.Method.DeclaringType, new ParameterProxy(method, (
ParameterIndex
)0), dynamicallyAccessedMemberTypes, _context);
891
ParameterProxy param = new(method, (
ParameterIndex
)0);
893
return GetMethodParameterValue(new ParameterProxy(method, (
ParameterIndex
)0), damt);
Linker.Dataflow\MethodBodyScanner.cs (2)
784
ParameterIndex
paramNum = ParameterHelpers.GetParameterIndex(thisMethod, operation);
805
ParameterIndex
paramNum = ParameterHelpers.GetParameterIndex(methodIL.Method, operation);
Linker.Dataflow\MethodProxy.cs (1)
65
internal partial ParameterProxy GetParameter(
ParameterIndex
index) => Definition.GetParameter(index);
Linker.Steps\DiscoverCustomOperatorsHandler.cs (4)
179
if (method.GetMetadataParametersCount() != 1 || NonNullableType(method.GetParameter((
ParameterIndex
)0).ParameterType) != self)
204
var nnLeft = NonNullableType(method.GetParameter((
ParameterIndex
)0).ParameterType);
205
var nnRight = NonNullableType(method.GetParameter((
ParameterIndex
)1).ParameterType);
224
var nnSource = NonNullableType(method.GetParameter((
ParameterIndex
)0).ParameterType);
Linker.Steps\MarkStep.cs (3)
2764
return method.TryGetParameter((
ParameterIndex
)1)?.ParameterType.Name == "SerializationInfo" &&
2765
method.TryGetParameter((
ParameterIndex
)2)?.ParameterType.Name == "StreamingContext";
2813
&& m.GetParameter((
ParameterIndex
)0).ParameterType.MetadataType == MetadataType.String,
Linker\KnownMembers.cs (1)
22
if (method.GetMetadataParametersCount() != 1 || method.GetParameter((
ParameterIndex
)1).ParameterType.MetadataType != MetadataType.String)
Linker\MethodDefinitionExtensions.cs (4)
117
/// <see cref="GetParameter(MethodDefinition,
ParameterIndex
)"/> for a non-nullable version if you know the index is valid.
119
internal static ParameterProxy? TryGetParameter(this MethodDefinition method,
ParameterIndex
index)
129
/// <see cref="TryGetParameter(MethodDefinition,
ParameterIndex
)"/> for a non-throwing version if you're not sure the parameter exists on the method.
131
internal static ParameterProxy GetParameter(this MethodDefinition method,
ParameterIndex
index)
Linker\ParameterHelpers.cs (5)
13
public static
ParameterIndex
GetParameterIndex(MethodDefinition thisMethod, Instruction operation)
38
ParameterIndex
GetLdargParamIndex()
40
return (
ParameterIndex
)(code - Code.Ldarg_0);
42
ParameterIndex
GetParamSequence()
45
return (
ParameterIndex
)param.Sequence;
src\runtime\src\tools\illink\src\ILLink.Shared\ParameterIndex.cs (21)
30
public readonly struct ParameterIndex : System.IEquatable<
ParameterIndex
>
37
public static bool operator ==(
ParameterIndex
left,
ParameterIndex
right) => left.Index == right.Index;
39
public static bool operator !=(
ParameterIndex
left,
ParameterIndex
right) => left.Index != right.Index;
41
public static
ParameterIndex
operator ++(
ParameterIndex
val) => new ParameterIndex(val.Index + 1);
44
=> obj is
ParameterIndex
other && Index == other.Index;
46
public bool Equals(
ParameterIndex
other)
51
public static explicit operator
ParameterIndex
(int x)
54
public static explicit operator int(
ParameterIndex
x)
56
public static
ParameterIndex
operator +(
ParameterIndex
left,
ParameterIndex
right)
59
public static
ParameterIndex
operator -(
ParameterIndex
left,
ParameterIndex
right)
62
public static
ParameterIndex
operator +(
ParameterIndex
left, int right)
65
public static
ParameterIndex
operator -(
ParameterIndex
left, int right)
src\runtime\src\tools\illink\src\ILLink.Shared\TrimAnalysis\HandleCallAction.cs (20)
490
if (calledMethod.HasParameterOfType((
ParameterIndex
)2, "System.Reflection.BindingFlags"))
562
else if (calledMethod.HasMetadataParametersCount(2) && calledMethod.HasParameterOfType((
ParameterIndex
)2, "System.Reflection.BindingFlags"))
564
else if (calledMethod.HasMetadataParametersCount(3) && calledMethod.HasParameterOfType((
ParameterIndex
)3, "System.Reflection.BindingFlags"))
620
if (calledMethod.HasParameterOfType((
ParameterIndex
)2, "System.Reflection.BindingFlags"))
622
else if (calledMethod.HasParameterOfType((
ParameterIndex
)3, "System.Reflection.BindingFlags"))
710
if (calledMethod.HasParameterOfType((
ParameterIndex
)2, "System.Reflection.BindingFlags"))
799
var targetValue = _annotations.GetMethodParameterValue(new(calledMethod, (
ParameterIndex
)1), requiredMemberTypes);
862
var targetValue = _annotations.GetMethodParameterValue(new(calledMethod, (
ParameterIndex
)0), DynamicallyAccessedMemberTypes.PublicParameterlessConstructor);
882
case IntrinsicId.Expression_Property when calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Reflection.MethodInfo"):
908
_annotations.GetMethodParameterValue(new(calledMethod, (
ParameterIndex
)1), DynamicallyAccessedMemberTypes.None).GetDiagnosticArgumentsForAnnotationMismatch().ToArray());
932
var targetValue = _annotations.GetMethodParameterValue(new(calledMethod, (
ParameterIndex
)1), memberTypes);
979
new ParameterProxy(calledMethod, (
ParameterIndex
)0),
1074
if ((calledMethod.HasMetadataParametersCount(3) && calledMethod.HasParameterOfType((
ParameterIndex
)2, "System.Boolean") && argumentValues[2].AsConstInt() != 0) ||
1316
if (calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Reflection.BindingFlags"))
1413
if (calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Boolean"))
1478
var targetValue = _annotations.GetMethodParameterValue(new(calledMethod, (
ParameterIndex
)0), requiredMemberTypes);
1562
calledMethod.HasMetadataParametersCount(3) && calledMethod.HasParameterOfType((
ParameterIndex
)3, "System.Boolean") && argumentValues[2].AsConstInt() != 0;
1766
if (calledMethod.HasMetadataParametersCount(8) && calledMethod.HasParameterOfType((
ParameterIndex
)2 + offset, "System.Boolean"))
1807
_diagnosticContext.AddDiagnostic(DiagnosticId.UnrecognizedParameterInMethodCreateInstance, new ParameterProxy(calledMethod, (
ParameterIndex
)1 + offset).GetDisplayName(), calledMethod.GetDisplayName());
1813
_diagnosticContext.AddDiagnostic(DiagnosticId.UnrecognizedParameterInMethodCreateInstance, new ParameterProxy(calledMethod, (
ParameterIndex
)0 + offset).GetDisplayName(), calledMethod.GetDisplayName());
src\runtime\src\tools\illink\src\ILLink.Shared\TrimAnalysis\Intrinsics.cs (60)
35
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.RuntimeMethodHandle")
47
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.Delegate")
52
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.Type")
53
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
58
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.Type")
59
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.,String")
64
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.Type")
65
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
70
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.Type")
71
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
76
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.Type")
82
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Type")
89
&& ((calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Type") && calledMethod.HasMetadataParametersCount(3))
90
|| (calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Reflection.MethodInfo") && calledMethod.HasMetadataParametersCount(2)))
95
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.Type")
101
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.Type")
107
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.Type")
113
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.Type")
119
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Type")
125
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Type")
131
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Type")
142
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.String")
155
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Reflection.BindingFlags")
173
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
180
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Reflection.BindingFlags")
187
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
194
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Reflection.BindingFlags")
201
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
208
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Reflection.BindingFlags")
215
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
222
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Reflection.BindingFlags")
230
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
232
(calledMethod.HasMetadataParametersCount(2) && calledMethod.HasParameterOfType((
ParameterIndex
)2, "System.Reflection.BindingFlags")) ||
233
(calledMethod.HasMetadataParametersCount(3) && calledMethod.HasParameterOfType((
ParameterIndex
)3, "System.Reflection.BindingFlags")))
240
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Reflection.BindingFlags")
247
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
249
(calledMethod.HasMetadataParametersCount(2) && calledMethod.HasParameterOfType((
ParameterIndex
)2, "System.Boolean")))
284
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
290
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Reflection.BindingFlags")
299
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Type")
308
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Int32")
319
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.Type")
327
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.String")
328
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
336
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.String")
337
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
344
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
345
&& calledMethod.HasParameterOfType((
ParameterIndex
)2, "System.String")
352
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
353
&& calledMethod.HasParameterOfType((
ParameterIndex
)2, "System.String")
360
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
361
&& calledMethod.HasParameterOfType((
ParameterIndex
)2, "System.String")
368
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
369
&& calledMethod.HasParameterOfType((
ParameterIndex
)2, "System.String")
376
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
383
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
392
&& calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.String")
398
&& (calledMethod.HasMetadataParametersCount(0) || calledMethod.HasParameterOfType((
ParameterIndex
)1, "System.Boolean"))
411
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.RuntimeTypeHandle")
423
&& calledMethod.HasParameterOfType((
ParameterIndex
)0, "System.Type")
src\runtime\src\tools\illink\src\ILLink.Shared\TrimAnalysis\MethodParameterValue.cs (1)
30
public
ParameterIndex
Index => Parameter.Index;
src\runtime\src\tools\illink\src\ILLink.Shared\TypeSystemProxy\MethodProxy.cs (3)
41
/// See <see cref="
ParameterIndex
"/> for more info.
43
internal partial ParameterProxy GetParameter(
ParameterIndex
index);
54
internal bool HasParameterOfType(
ParameterIndex
parameterIndex, string fullTypeName)
src\runtime\src\tools\illink\src\ILLink.Shared\TypeSystemProxy\ParameterCollection.cs (2)
52
public ParameterProxy Current => new ParameterProxy(_method, (
ParameterIndex
)_current);
54
object IEnumerator.Current => new ParameterProxy(_method, (
ParameterIndex
)_current);
src\runtime\src\tools\illink\src\ILLink.Shared\TypeSystemProxy\ParameterProxy.cs (3)
14
public ParameterProxy(MethodProxy method,
ParameterIndex
index)
24
public
ParameterIndex
Index { get; }
49
public bool IsImplicitThis => Method.HasImplicitThis() && Index == (
ParameterIndex
)0;