start to use parfait classes
bit of a bumpy road
This commit is contained in:
@ -7,3 +7,34 @@ require "parfait/array"
|
||||
require "parfait/string"
|
||||
require "parfait/message"
|
||||
require "parfait/frame"
|
||||
|
||||
# Below we define functions (in different classes) that are not part of the run-time
|
||||
# They are used for the boot process, ie when this codes executes in the vm that builds salama
|
||||
|
||||
# To stay sane, we use the same classes that we use later, but "adapt" them to work in ruby
|
||||
# This affects mainly memory layout
|
||||
|
||||
module FakeMem
|
||||
def initialize
|
||||
@memory = []
|
||||
end
|
||||
end
|
||||
|
||||
class Parfait::Object
|
||||
include FakeMem
|
||||
def self.new_object &args
|
||||
puts "I am #{self}"
|
||||
object = self.new(*args)
|
||||
object
|
||||
end
|
||||
def object_length
|
||||
@memory.length
|
||||
end
|
||||
end
|
||||
class Parfait::Class
|
||||
end
|
||||
class Parfait::Array
|
||||
def length
|
||||
object_length
|
||||
end
|
||||
end
|
||||
|
Reference in New Issue
Block a user