[]( index, type = nil )
click to toggle source
def []( index, type = nil )
if type.nil?
return @elements[index]
else
return @elements_hash_by_type[type][index]
end
end
each( &b )
click to toggle source
def each( &b )
@elements.each do |e|
yield( e )
end
end
push( obj )
click to toggle source
def push( obj )
@elements.push( obj )
if @elements_hash_by_type[obj['type']].nil?
@elements_hash_by_type[obj['type']] = Array.new
end
@elements_hash_by_type[obj['type']].push( obj )
end
size_of( type )
click to toggle source
def size_of( type )
if @elements_hash_by_type[type].nil?
return 0
else
return @elements_hash_by_type[type].size
end
end