Module: Aspect::HasRegistry

Included in:
Verifier::Check
Defined in:
lib/aspect/has_registry.rb

Overview

Extend in a ‘Class` to register new instances with a name in a collection named `.registry`.

Instance Method Summary collapse

Instance Method Details

#register(name, *arguments) { ... } ⇒ Object

Register an instance.

Parameters:

  • name (#to_sym)

Yields:

  • The new instance’s scope.

Returns:

  • (Object)


16
17
18
# File 'lib/aspect/has_registry.rb', line 16

def register(name, *arguments, &block)
  registry[name.to_sym] = new(*arguments, &block)
end

#registered?(name) ⇒ Boolean

Get whether an instance is registered.

Parameters:

  • name (#to_sym)

Returns:

  • (Boolean)


24
25
26
# File 'lib/aspect/has_registry.rb', line 24

def registered?(name)
  @registry.keys.include?(name.to_sym)
end

#registry{Symbol => Object}

All defined instances.

Returns:

  • ({Symbol => Object})


7
8
9
# File 'lib/aspect/has_registry.rb', line 7

def registry
  @registry ||= {}
end