Ejemplo n.º 1
0
 public override void EmitOp(DMObject dmObject, DMProc proc, DMReference reference)
 {
     proc.PushReferenceValue(reference);
     RHS.EmitPushValue(dmObject, proc);
     proc.BitShiftRight();
     proc.Assign(reference);
 }
Ejemplo n.º 2
0
        public override void EmitPushValue(DMObject dmObject, DMProc proc)
        {
            string endLabel = proc.NewLabelName();

            LHS.EmitPushValue(dmObject, proc);
            proc.BooleanAnd(endLabel);
            RHS.EmitPushValue(dmObject, proc);
            proc.AddLabel(endLabel);
        }
Ejemplo n.º 3
0
        public override void EmitOp(DMObject dmObject, DMProc proc, DMReference reference)
        {
            string skipLabel = proc.NewLabelName();
            string endLabel  = proc.NewLabelName();

            proc.PushReferenceValue(reference);
            proc.JumpIfTrue(skipLabel);

            RHS.EmitPushValue(dmObject, proc);
            proc.Assign(reference);
            proc.Jump(endLabel);

            proc.AddLabel(skipLabel);
            proc.PushReferenceValue(reference);
            proc.AddLabel(endLabel);
        }
Ejemplo n.º 4
0
 public override void EmitPushValue(DMObject dmObject, DMProc proc)
 {
     LHS.EmitPushValue(dmObject, proc);
     RHS.EmitPushValue(dmObject, proc);
     proc.Multiply();
 }
Ejemplo n.º 5
0
 public override void EmitOp(DMObject dmObject, DMProc proc, DMReference reference)
 {
     RHS.EmitPushValue(dmObject, proc);
     proc.ModulusReference(reference);
 }
Ejemplo n.º 6
0
 public override void EmitPushValue(DMObject dmObject, DMProc proc)
 {
     LHS.EmitPushValue(dmObject, proc);
     RHS.EmitPushValue(dmObject, proc);
     proc.Subtract();
 }
Ejemplo n.º 7
0
 public override void EmitPushValue(DMObject dmObject, DMProc proc)
 {
     LHS.EmitPushValue(dmObject, proc);
     RHS.EmitPushValue(dmObject, proc);
     proc.LessThanOrEqual();
 }
Ejemplo n.º 8
0
 public override void EmitPushValue(DMObject dmObject, DMProc proc)
 {
     LHS.EmitPushValue(dmObject, proc);
     RHS.EmitPushValue(dmObject, proc);
     proc.GreaterThan();
 }
Ejemplo n.º 9
0
 public override void EmitPushValue(DMObject dmObject, DMProc proc)
 {
     LHS.EmitPushValue(dmObject, proc);
     RHS.EmitPushValue(dmObject, proc);
     proc.NotEquivalent();
 }
Ejemplo n.º 10
0
 public override void EmitPushValue(DMObject dmObject, DMProc proc)
 {
     LHS.EmitPushValue(dmObject, proc);
     RHS.EmitPushValue(dmObject, proc);
     proc.BinaryOr();
 }
Ejemplo n.º 11
0
 public override void EmitPushValue(DMObject dmObject, DMProc proc)
 {
     LHS.EmitPushValue(dmObject, proc);
     RHS.EmitPushValue(dmObject, proc);
     proc.BitShiftRight();
 }