Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
HoistedLocals.cs
Go to the documentation of this file.
5
7
8internal sealed class HoistedLocals
9{
10 internal readonly HoistedLocals Parent;
11
13
15
17
19
21 {
22 if (parent != null)
23 {
24 vars = vars.AddFirst(parent.SelfVariable);
25 }
27 for (int i = 0; i < vars.Count; i++)
28 {
29 dictionary.Add(vars[i], i);
30 }
31 SelfVariable = Expression.Variable(typeof(object[]), null);
32 Parent = parent;
35 }
36
37 internal static object[] GetParent(object[] locals)
38 {
39 return ((StrongBox<object[]>)locals[0]).Value;
40 }
41}
readonly ParameterExpression SelfVariable
readonly ReadOnlyCollection< ParameterExpression > Variables
HoistedLocals(HoistedLocals parent, ReadOnlyCollection< ParameterExpression > vars)
static object[] GetParent(object[] locals)
readonly ReadOnlyDictionary< Expression, int > Indexes
static ParameterExpression Variable(Type type)