getting the symbols to work

This commit is contained in:
Torsten Ruger
2015-06-01 08:33:23 +03:00
parent bee73801eb
commit f08d9659fc
9 changed files with 53 additions and 42 deletions

View File

@ -14,9 +14,12 @@ module Virtual
unless object.has_layout?
object.init_layout
end
if( object.is_a? Parfait::Method)
object.info.constants.each{|c| keep(c) }
end
layout = object.get_layout
#puts "Layout #{layout.get_object_class.name} #{Machine.instance.objects.include?(layout)}"
keep layout
#puts "Layout #{layout.get_object_class.name} #{Machine.instance.objects.include?(layout)}"
layout.each do |name|
inst = object.instance_variable_get "@#{name}".to_sym
keep inst

View File

@ -21,9 +21,9 @@ module Virtual
def run block
block.codes.dup.each do |code|
if code.is_a?(NewFrame)
kind = "next_frame"
kind = :next_frame
elsif code.is_a?(NewMessage)
kind = "next_message"
kind = :next_message
else
next
end

View File

@ -22,13 +22,13 @@ module Virtual
puts "function was already removed #{ function.name}"
return
end
#puts "stayer #{function.name}"
@gonners.delete function
function.info.blocks.each do |block|
block.codes.each do |code|
if code.is_a? Virtual::MessageSend
str_name = code.name.to_s
@gonners.each do |stay|
remove stay if(stay.name == str_name)
remove stay if(stay.name == code.name)
end
end
remove code.method if code.is_a? Virtual::MethodCall