small clean
This commit is contained in:
parent
dba94827ec
commit
94c08f7129
@ -17,8 +17,7 @@ module Bosl
|
||||
#
|
||||
# Everything in ruby is an expression, ie returns a value. So the effect of every compile
|
||||
# is that a value is put into the ReturnSlot of the current Message.
|
||||
# The compile method (so every compile method) returns the value that it deposits which
|
||||
# may be unknown Unknown value.
|
||||
# The compile method (so every compile method) returns the value that it deposits.
|
||||
#
|
||||
# The process uses a visitor pattern (from AST::Processor) to dispatch according to the
|
||||
# type the expression. So a s(:if xx) will become an on_if(node) call.
|
||||
|
@ -72,9 +72,5 @@ module Bosl
|
||||
r
|
||||
end
|
||||
|
||||
def on_variable expression
|
||||
method.source.add_code InstanceGet.new(expression.name)
|
||||
Virtual::Return.new( Unknown )
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -11,10 +11,9 @@ module Parfait
|
||||
# name
|
||||
# arg_names
|
||||
# known local variable names
|
||||
# temp variables (numbered)
|
||||
# executable code
|
||||
|
||||
# ps, the compiler injects its own info, see virtual::compiled_method_info
|
||||
# ps, the compiler injects its own info, see Virtual::MethodSource
|
||||
|
||||
|
||||
class Method < Object
|
||||
|
@ -5,8 +5,6 @@ module Virtual
|
||||
# runtime, ie found in Parfait::Method
|
||||
|
||||
# the source we create here is injected into the method and used only at compile-time
|
||||
# receiver
|
||||
# return arg (usually mystery, but for coded ones can be more specific)
|
||||
|
||||
#
|
||||
# Methods are one step up from to VM::Blocks. Where Blocks can be jumped to, Methods can be called.
|
||||
|
@ -1,7 +1,7 @@
|
||||
|
||||
module Virtual
|
||||
# Integer and (Object) References are the main derived classes, but float will come and ...
|
||||
# The Unknown Type has unknown type and has only casting methods. So it must be cast to be useful.
|
||||
# Integer and (Object) References are the main derived classes, but float will come.
|
||||
|
||||
class Type
|
||||
def == other
|
||||
return false unless other.class == self.class
|
||||
@ -9,7 +9,7 @@ module Virtual
|
||||
end
|
||||
|
||||
# map from a type sym (currently :int/:ref) to a class of subtype of Type
|
||||
# TODO needs to be made extensible in a defined way.
|
||||
# TODO needs to be made extensible in a defined way.
|
||||
def self.from_sym type
|
||||
case type
|
||||
when :int
|
||||
|
@ -46,12 +46,6 @@ class TestBasic < MiniTest::Test
|
||||
check
|
||||
end
|
||||
|
||||
def ttest_field
|
||||
@string_input = 'self.foo_bar '
|
||||
@output = "- Virtual::Return(:type => Virtual::Unknown)"
|
||||
check
|
||||
end
|
||||
|
||||
def pest_module_name
|
||||
@string_input = 'FooBar '
|
||||
@output = ""
|
||||
|
Loading…
Reference in New Issue
Block a user