% Negate Int

meth ineg =^ (

var o : Object

var D : DataInfoInt

var op : Int

var CurrentFrame : FrameInfo

TopFrame.GetFrame(CurrentFrame);

% Getting the operand on the Operand stack

currentFrame.Pop(o);

if [] o isExactly DataInfoInt (DataInfoInt) o.GetInfo(op);

[] not (o isExactly DataInfoInt) miracle

fi

% Negating the operand

op:= op * (-1);

D.SetInfo(op);

currentFrame.Push (D);

TopFrame.SetFrame(CurrentFrame);

end end end end

)

end