Class: PR::FieldRegistry

Inherits:
Object
  • Object
show all
Defined in:
lib/pr/field_registry.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(klass) ⇒ FieldRegistry

Returns a new instance of FieldRegistry.



9
10
11
12
# File 'lib/pr/field_registry.rb', line 9

def initialize klass
  @for = klass
  @fields = {}
end

Instance Attribute Details

#forObject (readonly)

Returns the value of attribute for.



13
14
15
# File 'lib/pr/field_registry.rb', line 13

def for
  @for
end

Class Method Details

.[](klass) ⇒ Object



4
5
6
7
# File 'lib/pr/field_registry.rb', line 4

def self.[] klass
  @registers ||= {}
  @registers[klass] ||= new(klass)
end

Instance Method Details

#fetch(field_name) ⇒ Object



19
20
21
# File 'lib/pr/field_registry.rb', line 19

def fetch field_name
  @fields.fetch field_name
end

#fieldsObject



23
24
25
# File 'lib/pr/field_registry.rb', line 23

def fields
  @fields.keys
end

#register(field_name, field) ⇒ Object



15
16
17
# File 'lib/pr/field_registry.rb', line 15

def register field_name, field
  @fields[field_name] = field
end