rubyx/lib/vool/statements/statements.rb

41 lines
712 B
Ruby

module Vool
class Statements < Statement
attr_reader :statements
def initialize(statements)
@statements = statements
end
# create machine instructions
def to_mom( method )
@statements.collect do |statement|
statement.to_mom( method )
end
end
def empty?
@statements.empty?
end
def single?
@statements.length == 1
end
def first
@statements.first
end
def length
@statements.length
end
def collect(arr)
@statements.each { |s| s.collect(arr) }
super
end
def create_objects
@statements.each{ |s| s.create_objects }
end
end
class ScopeStatement < Statements
end
end