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

◆ FixupQuotedExpression()

Expression System.Linq.EnumerableRewriter.FixupQuotedExpression ( Type type,
Expression expression )
inlineprivate

Definition at line 79 of file EnumerableRewriter.cs.

80 {
82 while (true)
83 {
84 if (type.IsAssignableFrom(expression2.Type))
85 {
86 return expression2;
87 }
88 if (expression2.NodeType != ExpressionType.Quote)
89 {
90 break;
91 }
93 }
94 if (!type.IsAssignableFrom(expression2.Type) && type.IsArray && expression2.NodeType == ExpressionType.NewArrayInit)
95 {
97 if (type.IsAssignableFrom(c))
98 {
99 Type elementType = type.GetElementType();
102 int i = 0;
103 for (int count = newArrayExpression.Expressions.Count; i < count; i++)
104 {
106 }
108 }
109 }
110 return expression;
111 }
static Type StripExpression(Type type)
Expression FixupQuotedExpression(Type type, Expression expression)
static NewArrayExpression NewArrayInit(Type type, params Expression[] initializers)

References System.Linq.count, System.Collections.Generic.Dictionary< TKey, TValue >.Count, System.elementType, System.Linq.EnumerableRewriter.FixupQuotedExpression(), System.Type.GetElementType(), System.list, System.Linq.Expressions.Expression< TDelegate >.NewArrayInit(), System.Linq.EnumerableRewriter.StripExpression(), and System.type.

Referenced by System.Linq.EnumerableRewriter.FixupQuotedArgs(), and System.Linq.EnumerableRewriter.FixupQuotedExpression().