+(rhs)
click to toggle source
def +(rhs)
o = NamedElements.new
o.elements = @elements + rhs.elements
o
end
<<(rhs)
click to toggle source
def <<(rhs)
@elements << rhs
self
end
[](idx)
click to toggle source
def [](idx)
if idx.is_a?(Numeric)
@elements[idx]
else
@cache[idx] ||= @elements.find { |item| item.name == idx }
end
end
concat(rhs)
click to toggle source
def concat(rhs)
@elements.concat(rhs.elements)
self
end
delete(rhs)
click to toggle source
def delete(rhs)
@elements.delete(rhs)
end
dup()
click to toggle source
def dup
o = NamedElements.new
o.elements = @elements.dup
o
end
each()
click to toggle source
def each
@elements.each do |element|
yield(element)
end
end
empty?()
click to toggle source
find_name(name)
click to toggle source
def find_name(name)
@elements.find { |item| item.name.name == name }
end
freeze()
click to toggle source
def freeze
super
@elements.freeze
self
end
keys()
click to toggle source
def keys
collect { |element| element.name }
end
size()
click to toggle source
def size
@elements.size
end