class Simp::Metadata::Components
Attributes
engine[RW]
type[RW]
version[RW]
Public Class Methods
new(engine, version = nil, type = nil)
click to toggle source
# File lib/simp/metadata/components.rb, line 9 def initialize(engine, version = nil, type = nil) @engine = engine @version = version @type = type end
Public Instance Methods
[](index)
click to toggle source
# File lib/simp/metadata/components.rb, line 29 def [](index) Simp::Metadata::Component.new(engine, index, version) end
create(name, settings = {})
click to toggle source
# File lib/simp/metadata/components.rb, line 61 def create(name, settings = {}) unless key?(name) engine.writable_source.components[name] = settings engine.writable_source.dirty = true end end
each() { |self| ... }
click to toggle source
# File lib/simp/metadata/components.rb, line 23 def each keys.each do |version| yield self[version] end end
key?(name)
click to toggle source
# File lib/simp/metadata/components.rb, line 33 def key?(name) keys.include?(name) end
keys()
click to toggle source
# File lib/simp/metadata/components.rb, line 37 def keys result = {} if version.nil? engine.sources.each do |_name, source| source.components.keys.each do |name| result[name] = true end end else engine.sources.each do |_name, source| if source.releases.key?(version) source.releases[version].each do |component, _data| result[component] = true end else source.release(version).each do |component, _data| result[component] = true end end end end result.keys end
size()
click to toggle source
# File lib/simp/metadata/components.rb, line 19 def size keys.size end
to_s()
click to toggle source
# File lib/simp/metadata/components.rb, line 15 def to_s keys.to_s end