示例#1
0
        public override void Serialize(ScopeInstruction template)
        {
            var parts = template.Operand.Split('.');

            Type      = parts[parts.Length - 1];
            _template = template;
        }
示例#2
0
        public override void Serialize(ScopeInstruction template)
        {
            if (template.Name.Split('.')[1] == "ref")
            {
                _ref = true;
                return;
            }

            _type = CType.ResolveConv(template.Name.Split('.')[1]);
        }
示例#3
0
文件: Ldloc.cs 项目: Wincent01/SharpC
 public override void Serialize(ScopeInstruction template)
 {
     if (template.Operand.Contains("V"))
     {
         Point = int.Parse(template.Operand.Split('_')[1]) - 1;
     }
     else
     {
         Point = int.Parse(template.Name.Split('.')[1]);
     }
 }
示例#4
0
        public override void Serialize(ScopeInstruction template)
        {
            var parts = template.Operand.Split(':');

            _objName = parts[2].Split('(')[0].Split('<')[0];

            var clsParts = parts[0].Split('.');

            _className = clsParts[clsParts.Length - 1];

            _template = template;
        }
示例#5
0
文件: Ldarg.cs 项目: Wincent01/SharpC
        public override void Serialize(ScopeInstruction template)
        {
            var parts = template.Name.Split('.');

            if (parts.Length == 2)
            {
                _at = int.Parse(parts[1]);
                return;
            }

            _at = parts[1] == "s" ? int.Parse(template.Operand) : int.Parse(parts[1]) - 1;
            if (_at < 0)
            {
                _at = 0;
            }
        }
示例#6
0
文件: Ldarg.cs 项目: Wincent01/SharpC
 public override void Serialize(ScopeInstruction template)
 {
     _arg = template.Operand;
 }
示例#7
0
 public override void Serialize(ScopeInstruction template)
 {
     Type = CType.ResolveConv(template.Name.Split('.')[1]);
 }
示例#8
0
文件: Conv.cs 项目: Wincent01/SharpC
        public override void Serialize(ScopeInstruction template)
        {
            var parts = template.Name.Split('.');

            _convCode = parts[parts.Length - 1];
        }
示例#9
0
文件: Ldfld.cs 项目: Wincent01/SharpC
 public override void Serialize(ScopeInstruction template)
 {
     _field = template.Operand.Split(':')[2];
 }
示例#10
0
        public override void Serialize(ScopeInstruction template)
        {
            var parts = template.Operand.Split(':');

            ObjName = parts[0].Split('.')[parts[0].Split('.').Length - 1];
        }
示例#11
0
 public override void Serialize(ScopeInstruction template)
 {
     _instructions = (Instruction[])template.Template.Operand;
     _instruction  = template;
 }
示例#12
0
 /// <summary>
 /// Serialize CIL instruction
 /// </summary>
 /// <param name="template">Scope Instruction to serialize</param>
 public virtual void Serialize(ScopeInstruction template)
 {
 }
示例#13
0
 public override void Serialize(ScopeInstruction template)
 {
     _instruction = template;
 }
示例#14
0
文件: Ldstr.cs 项目: Wincent01/SharpC
 public override void Serialize(ScopeInstruction template)
 {
     Value = template.Operand.Trim('"');
 }
示例#15
0
        public override void Serialize(ScopeInstruction template)
        {
            var parts = template.Operand.Split('.');

            _castClass = parts[parts.Length - 1];
        }