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

◆ MakeNewDelegate()

static Type System.Linq.Expressions.Compiler.DelegateHelpers.MakeNewDelegate ( Type[] types)
inlinestaticpackage

Definition at line 153 of file DelegateHelpers.cs.

154 {
155 bool flag;
156 if (types.Length > 17)
157 {
158 flag = true;
159 }
160 else
161 {
162 flag = false;
163 foreach (Type type in types)
164 {
165 if (type.IsByRef || type.IsByRefLike || type.IsPointer)
166 {
167 flag = true;
168 break;
169 }
170 }
171 }
172 if (flag)
173 {
175 }
176 if (types[^1] == typeof(void))
177 {
178 return GetActionType(types.RemoveLast());
179 }
180 return GetFuncType(types);
181 }

References System.Linq.Expressions.Compiler.DelegateHelpers.GetActionType(), System.Linq.Expressions.Compiler.DelegateHelpers.GetFuncType(), System.Linq.Expressions.Compiler.DelegateHelpers.MakeNewCustomDelegate(), and System.type.

Referenced by System.Linq.Expressions.Compiler.DelegateHelpers.MakeDeferredSiteDelegate(), System.Linq.Expressions.Compiler.TypeInfoExtensions.MakeDelegateType(), and System.Linq.Expressions.Compiler.DelegateHelpers.MakeDelegateType().