Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ CreateLambda()

static LambdaExpression System.Linq.Expressions.Expression< TDelegate >.CreateLambda ( Type delegateType,
Expression< TDelegate > body,
string name,
bool tailCall,
ReadOnlyCollection< ParameterExpression< TDelegate > > parameters )
inlinestaticpackageinherited

Definition at line 3246 of file Expression.cs.

3247 {
3249 if (cacheDict == null)
3250 {
3252 }
3254 {
3255 MethodInfo method = typeof(Expression<>).MakeGenericType(delegateType).GetMethod("Create", BindingFlags.Static | BindingFlags.NonPublic);
3256 if (delegateType.IsCollectible)
3257 {
3258 return (LambdaExpression)method.Invoke(null, new object[4] { body, name, tailCall, parameters });
3259 }
3261 }
3262 return value(body, name, tailCall, parameters);
3263 }
bool TryGetValue(TKey key, [MaybeNullWhen(false)] out TValue value)
static volatile CacheDict< Type, Func< Expression, string, bool, ReadOnlyCollection< ParameterExpression >, LambdaExpression > > s_lambdaFactories

References System.Linq.Expressions.Expression< TDelegate >.s_lambdaFactories, System.Collections.Generic.Dictionary< TKey, TValue >.TryGetValue(), and System.value.

Referenced by System.Linq.Expressions.Expression< TDelegate >.Lambda(), System.Linq.Expressions.Expression< TDelegate >.Lambda(), and System.Linq.Expressions.Expression< TDelegate >.Lambda().