2014-10-03 09:25:10 +02:00
|
|
|
module Virtual
|
|
|
|
|
|
|
|
# class for Set instructions, A set is basically a mem move.
|
2015-05-30 11:20:39 +02:00
|
|
|
# to and from are indexes into the known objects(frame,message,self and new_message),
|
|
|
|
# these are represented as slots (see there)
|
2014-10-03 09:25:10 +02:00
|
|
|
# from may be a Constant (Object,Integer,String,Class)
|
|
|
|
class Set < Instruction
|
2015-06-21 12:29:27 +02:00
|
|
|
def initialize from , to
|
2015-09-20 15:52:26 +02:00
|
|
|
raise "no to slot #{to.inspect}" unless to.is_a? Slot
|
2014-10-03 09:25:10 +02:00
|
|
|
@from = from
|
2015-06-21 12:29:27 +02:00
|
|
|
@to = to
|
2014-10-03 09:25:10 +02:00
|
|
|
end
|
2015-05-06 14:15:33 +02:00
|
|
|
attr_reader :from , :to
|
2014-10-03 09:25:10 +02:00
|
|
|
end
|
|
|
|
end
|