147 if (
rules.Length < 9)
149 array =
new T[rules.Length + 1];
166 if (i <
rules.Length)
176 [
UnconditionalSuppressMessage(
"ReflectionAnalysis",
"IL2060:MakeGenericMethod", Justification =
"UpdateDelegates methods don't have ILLink annotations.")]
231 [
UnconditionalSuppressMessage(
"ReflectionAnalysis",
"IL2060:MakeGenericMethod", Justification =
"CallSiteOps methods don't have trimming annotations.")]
275 builder.UncheckedAdd(
Expression.
IfThen(
Expression.
NotEqual(
Expression.
Assign(
parameterExpression3,
Expression.
Call(
CachedReflectionInfo.
CallSiteOps_GetRules.MakeGenericMethod(
typeArguments),
parameterExpression2)),
Expression.
Constant(
null,
parameterExpression3.Type)),
Expression.
Block(
Expression.
Assign(
parameterExpression7,
Expression.
ArrayLength(
parameterExpression3)),
Expression.
Assign(
parameterExpression8,
Utils.
Constant(0)),
Expression.
Loop(
Expression.
Block(
arg4,
arg3,
Expression.
IfThen(
Expression.
NotEqual(
Expression.
Convert(
parameterExpression4,
typeof(
object)),
Expression.
Convert(
parameterExpression5,
typeof(
object))),
Expression.
Block(
Expression.
Assign(
expression,
parameterExpression4),
arg2,
expression2)),
expression5),
labelTarget2,
null))));
static unsafe void Copy(Array sourceArray, Array destinationArray, int length)
bool TryGetValue(TKey key, [MaybeNullWhen(false)] out TValue value)
void Add(TKey key, TValue value)
static void Requires([DoesNotReturnIf(false)] bool precondition, string paramName)
static void RequiresNotNull(object value, string paramName)
static bool AreReferenceAssignable(Type dest, Type src)
static MethodInfo CallSiteOps_ClearMatch
static MethodInfo CallSiteOps_UpdateRules
static MethodInfo CallSiteOps_MoveRule
static MethodInfo CallSiteOps_GetRuleCache
static MethodInfo CallSiteOps_CreateMatchmaker
static MethodInfo CallSiteOps_AddRule
static MethodInfo CallSiteOps_Bind
static MethodInfo CallSiteOps_GetMatch
static MethodInfo CallSiteOps_GetRules
static MethodInfo CallSiteOps_GetCachedRules
static Type GetFuncType(Type[] types)
static Type GetActionType(Type[] types)
static Exception TypeMustBeDerivedFromSystemDelegate()
static ConstantExpression Constant(object? value)
static BlockExpression Block(Expression arg0, Expression arg1)
static DefaultExpression Default(Type type)
static BinaryExpression NotEqual(Expression left, Expression right)
static LambdaExpression Lambda(Expression body, params ParameterExpression[]? parameters)
static UnaryExpression ArrayLength(Expression array)
static GotoExpression Return(LabelTarget target)
static MethodCallExpression Call(MethodInfo method)
static BinaryExpression Assign(Expression left, Expression right)
static ParameterExpression Parameter(Type type)
static UnaryExpression PreIncrementAssign(Expression expression)
static GotoExpression Break(LabelTarget target)
static IndexExpression Property(Expression instance, string propertyName, params Expression[]? arguments)
static LabelExpression Label(LabelTarget target)
static ConditionalExpression IfThen(Expression test, Expression ifTrue)
static LoopExpression Loop(Expression body)
static UnaryExpression Convert(Expression expression, Type type)
static MemberExpression Field(Expression? expression, FieldInfo field)
static NewArrayExpression NewArrayInit(Type type, params Expression[] initializers)
static BinaryExpression Equal(Expression left, Expression right)
static TryExpression TryFinally(Expression body, Expression? @finally)
static IndexExpression ArrayAccess(Expression array, params Expression[]? indexes)
static ParameterExpression Variable(Type type)
static InvocationExpression Invoke(Expression expression)
static ConstantExpression Constant(bool value)
virtual Type ParameterType
static bool IsSimpleSignature(MethodInfo invoke, out Type[] sig)
static CallSite< T > Create(CallSiteBinder binder)
readonly CallSiteBinder _binder
static CallSite Create(Type delegateType, CallSiteBinder binder)
static volatile T s_cachedNoMatch
CallSite(CallSiteBinder binder)
static volatile CacheDict< Type, Func< CallSiteBinder, CallSite > > s_siteCtors
T CreateCustomNoMatchDelegate(MethodInfo invoke)
T CreateCustomUpdateDelegate(MethodInfo invoke)
void ReleaseMatchmaker(CallSite matchMaker)
static Expression Convert(Expression arg, Type type)
CallSite< T > CreateMatchMaker()
T GetUpdateDelegate(ref T addr)
CallSite _cachedMatchmaker
static int Exchange(ref int location1, int value)