getting the passes back and starting on send

This commit is contained in:
Torsten Ruger
2014-08-21 17:46:12 +03:00
parent b5792c155c
commit 2260c680b2
6 changed files with 53 additions and 17 deletions

View File

@ -6,7 +6,8 @@ module Ast
def compile method , message
me = receiver.compile( method, message )
method.add_code Virtual::Set.new(Virtual::NewSelf.new, me)
method.add_code Virtual::Set.new(Virtual::NewSelf.new(me.type), me)
method.add_code Virtual::Set.new(Virtual::NewName.new(), name)
args.each_with_index do |arg , i|
val = arg.compile( method, message) #compile in the running method, ie before passing control
method.add_code Virtual::Set.new(Virtual::NewMessageSlot.new(i ,val.type ) , val )