rubyx/lib/common/statements.rb

36 lines
581 B
Ruby
Raw Normal View History

module Common
#extracted to resuse
module Statements
attr_reader :statements
def initialize(statements)
@statements = statements
end
def empty?
@statements.empty?
end
def single?
@statements.length == 1
end
def first
@statements.first
end
2017-09-06 11:51:24 +02:00
def last
@statements.last
end
def length
@statements.length
end
2017-09-06 11:51:24 +02:00
def [](i)
@statements[i]
end
2018-03-11 11:41:15 +01:00
def <<(o)
@statements << o
end
def collect(arr)
@statements.each { |s| s.collect(arr) }
super
end
end
end