示例#1
0
        public void Print(IPrintState state)
        {
            switch (this.Operand)
            {
            case OperandType.Integer:
            case OperandType.Float:
            case OperandType.Object:
            {
                state.Print("push", this.Operand, this.Value);
                return;
            }

            case OperandType.String:
            {
                var value = (string)this.Value;
                state.Print("push", this.Operand, "\"" + value + "\"");
                return;
            }

            case OperandType.Resource:
            {
                var value = (string)this.Value;
                state.Print("push", this.Operand, "'" + value + "'");
                return;
            }
            }

            throw new NotSupportedException();
        }
示例#2
0
 public void Print(IPrintState state)
 {
     if (this.Operand == Script.OperandType.StructureStructure)
     {
         state.Print("eq", this.Operand, this.StructureSize);
     }
     else
     {
         state.Print("eq", this.Operand);
     }
 }
示例#3
0
 public void Print(IPrintState state)
 {
     if (this.Operand == Script.OperandType.StructureStructure)
     {
         state.Print("eq", this.Operand, this.StructureSize);
     }
     else
     {
         state.Print("eq", this.Operand);
     }
 }
        public void Print(IPrintState state)
        {
            //state.Print("movsp", this.Value);

            if (this.Value >= 0)
            {
                state.Print("addsp", this.Value);
            }
            else
            {
                state.Print("subsp", -this.Value);
            }
        }
        public void Print(IPrintState state)
        {
            //state.Print("movsp", this.Value);

            if (this.Value >= 0)
            {
                state.Print("addsp", this.Value);
            }
            else
            {
                state.Print("subsp", -this.Value);
            }
        }
示例#6
0
 public void Print(IPrintState state)
 {
     state.Print("destruct", this.Unknown1, this.Unknown2, this.Unknown3);
 }
 public void Print(IPrintState state)
 {
     state.Print("destruct", this.Unknown1, this.Unknown2, this.Unknown3);
 }
 public void Print(IPrintState state)
 {
     state.Print("reserve", this.Operand);
 }
示例#9
0
 public void Print(IPrintState state)
 {
     state.Print("syscall", this.Routine, this.ArgumentCount);
 }
示例#10
0
 public void Print(IPrintState state)
 {
     state.Print("???U49", this.Unknown1, this.Unknown2);
 }
示例#11
0
 public void Print(IPrintState state)
 {
     state.Print("nop");
 }
示例#12
0
 public void Print(IPrintState state)
 {
     state.Print("jz", state.GetLabel(this.Destination));
 }
示例#13
0
 public void Print(IPrintState state)
 {
     state.Print("restorebp");
 }
示例#14
0
 public void Print(IPrintState state)
 {
     state.Print("reserve", this.Operand);
 }
示例#15
0
        public void Print(IPrintState state)
        {
            switch (this.Operand)
            {
                case OperandType.Integer:
                case OperandType.Float:
                case OperandType.Object:
                {
                    state.Print("push", this.Operand, this.Value);
                    return;
                }

                case OperandType.String:
                {
                    var value = (string)this.Value;
                    state.Print("push", this.Operand, "\"" + value + "\"");
                    return;
                }

                case OperandType.Resource:
                {
                    var value = (string)this.Value;
                    state.Print("push", this.Operand, "'" + value + "'");
                    return;
                }
            }

            throw new NotSupportedException();
        }
 public void Print(IPrintState state)
 {
     state.Print("cptopbp", this.Destination, this.ByteCount);
 }
示例#17
0
 public void Print(IPrintState state)
 {
     state.Print("nop");
 }
示例#18
0
 public void Print(IPrintState state)
 {
     state.Print("decisp", this.Destination);
 }
示例#19
0
 public void Print(IPrintState state)
 {
     state.Print("savebp");
 }
示例#20
0
 public void Print(IPrintState state)
 {
     state.Print("ret");
 }
示例#21
0
 public void Print(IPrintState state)
 {
     state.Print("jz", state.GetLabel(this.Destination));
 }
示例#22
0
 public void Print(IPrintState state)
 {
     state.Print("div", this.Operand);
 }
示例#23
0
 public void Print(IPrintState state)
 {
     state.Print("???U49", this.Unknown1, this.Unknown2);
 }
示例#24
0
 public void Print(IPrintState state)
 {
     state.Print("restorebp");
 }
示例#25
0
 public void Print(IPrintState state)
 {
     state.Print("gt", this.Operand);
 }
 public void Print(IPrintState state)
 {
     state.Print("incisp", this.Destination);
 }
示例#27
0
 public void Print(IPrintState state)
 {
     state.Print("ret");
 }
示例#28
0
 public void Print(IPrintState state)
 {
     state.Print("savebp");
 }
 public void Print(IPrintState state)
 {
     state.Print("cptopsp", this.Destination, this.ByteCount);
 }
 public void Print(IPrintState state)
 {
     state.Print("syscall", this.Routine, this.ArgumentCount);
 }