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

◆ GetOptimizedBlockExpression()

static BlockExpression System.Linq.Expressions.Expression< TDelegate >.GetOptimizedBlockExpression ( IReadOnlyList< Expression< TDelegate > > expressions)
inlinestaticprivateinherited

Definition at line 2257 of file Expression.cs.

2258 {
2259 switch (expressions.Count)
2260 {
2261 case 0:
2263 case 2:
2264 return new Block2(expressions[0], expressions[1]);
2265 case 3:
2266 return new Block3(expressions[0], expressions[1], expressions[2]);
2267 case 4:
2268 return new Block4(expressions[0], expressions[1], expressions[2], expressions[3]);
2269 case 5:
2270 return new Block5(expressions[0], expressions[1], expressions[2], expressions[3], expressions[4]);
2271 default:
2272 {
2274 return new BlockN(readOnlyList ?? expressions.ToArray());
2275 }
2276 }
2277 }
static BlockExpression BlockCore(Type type, ReadOnlyCollection< ParameterExpression > variables, ReadOnlyCollection< Expression > expressions)

References System.Linq.Expressions.Expression< TDelegate >.BlockCore(), System.Collections.Generic.Dictionary< TKey, TValue >.Count, and System.Reflection.Instance.

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