class Alki::Assembly::MetaList
Attributes
list[R]
Public Class Methods
new(list = [])
click to toggle source
# File lib/alki/assembly/meta_list.rb, line 6 def initialize(list = []) @list = list end
Public Instance Methods
add(name=nil,meta)
click to toggle source
# File lib/alki/assembly/meta_list.rb, line 10 def add(name=nil,meta) path = name ? [name.to_sym] : [] @list << [path,meta] self end
append(*prefix, meta_list)
click to toggle source
# File lib/alki/assembly/meta_list.rb, line 23 def append(*prefix, meta_list) append! *prefix, meta_list.dup self end
append!(*prefix, meta_list)
click to toggle source
# File lib/alki/assembly/meta_list.rb, line 28 def append!(*prefix, meta_list) @list.push *meta_list.prefix(*prefix).list self end
dup()
click to toggle source
# File lib/alki/assembly/meta_list.rb, line 47 def dup self.class.new to_a end
each() { |path, meta| ... }
click to toggle source
# File lib/alki/assembly/meta_list.rb, line 33 def each enum_for(:each) unless block_given? @list.each do |(path,meta)| yield path, meta end self end
prefix(*prefix)
click to toggle source
# File lib/alki/assembly/meta_list.rb, line 16 def prefix(*prefix) @list.each do |(path,_)| path.unshift *prefix end self end
to_a()
click to toggle source
# File lib/alki/assembly/meta_list.rb, line 41 def to_a @list.map do |(path,meta)| [path.dup,meta] end end