/// <summary>
 /// Add a state machine field to the set of fields available for allocation to temps
 /// </summary>
 private void FreeTemp(SynthesizedFieldSymbolBase field)
 {
     availableFields.Add(field);
 }
        private void FreeHoistedField(SynthesizedFieldSymbolBase field)
        {
            ArrayBuilder<SynthesizedFieldSymbolBase> fields;
            if (!availableHoistedFields.TryGetValue(field.Type, out fields))
            {
                availableHoistedFields.Add(field.Type, fields = new ArrayBuilder<SynthesizedFieldSymbolBase>());
            }

            fields.Add(field);
        }
示例#3
0
 public CapturedToFrameSymbolReplacement(SynthesizedFieldSymbolBase field)
 {
     this.field = field;
 }
示例#4
0
 public CapturedToFrameSymbolReplacement(SynthesizedFieldSymbolBase hoistedField, bool isReusable)
 {
     this.HoistedField = hoistedField;
     this.isReusable = isReusable;
 }