Class: Stargate::Server::Registry

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/stargate/server/registry.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(&block) ⇒ Registry

Returns a new instance of Registry.



8
9
10
11
# File 'lib/stargate/server/registry.rb', line 8

def initialize(&block)
  @versions = {}
  instance_eval(&block) if block_given?
end

Instance Attribute Details

#versionsObject (readonly)

Returns the value of attribute versions.



6
7
8
# File 'lib/stargate/server/registry.rb', line 6

def versions
  @versions
end

Instance Method Details

#[](version) ⇒ Object



17
18
19
# File 'lib/stargate/server/registry.rb', line 17

def [](version)
  versions[version] or raise RegistryVersionUndefinedError, "No such registry version: #{version}"
end

#each(&block) ⇒ Object



21
22
23
# File 'lib/stargate/server/registry.rb', line 21

def each(&block)
  versions.each(&block)
end

#version(number, &block) ⇒ Object



13
14
15
# File 'lib/stargate/server/registry.rb', line 13

def version(number, &block)
  @versions[number] ||= RegistryVersion.new(number, &block)
end