fix the boot

was broken for unknown reason really
This commit is contained in:
Torsten Ruger 2015-07-18 11:53:04 +03:00
parent f5136b6b68
commit 46de0f278e
3 changed files with 6 additions and 14 deletions

View File

@ -80,7 +80,7 @@ module Virtual
# add_object @space # add_object @space
values.each {|v| v.init_layout } class_mappings.values.each {|v| v.init_layout }
# now update the layout on all objects created so far, # now update the layout on all objects created so far,
# go through objects in space # go through objects in space

View File

@ -114,20 +114,13 @@ module Virtual
@passes.insert(index , pass) @passes.insert(index , pass)
end end
def self.boot
me = Virtual.machine
# boot is a verb here. this is a somewhat tricky process which is in it's own file, boot.rb
raise "already booted" if @booted
me.boot
me
end
def boot def boot
return if @booted return self if @booted
boot_parfait! boot_parfait!
@init = Block.new("init",nil) @init = Block.new("init",nil)
@init.add_code Virtual::VirtualMain.new( self.space.get_init ) @init.add_code Virtual::VirtualMain.new( self.space.get_init )
@booted = true @booted = true
self
end end
def compile_main bytes def compile_main bytes

View File

@ -11,12 +11,11 @@ end
module VirtualHelper module VirtualHelper
# need a code generator, for arm # need a code generator, for arm
def setup def setup
# @object_space = Boot::Space.new "Arm" @machine = Virtual.machine.boot
end end
def check def check
machine = Virtual::Machine.boot expressions = @machine.compile_main @string_input
expressions = machine.compile_main @string_input
if( expressions.first.is_a? Parfait::Method ) if( expressions.first.is_a? Parfait::Method )
# stops the whole objectspace beeing tested # stops the whole objectspace beeing tested
# with the class comes superclass and all methods # with the class comes superclass and all methods