Class: Julewire::Core::Fields::StaticLabels
- Inherits:
-
Object
- Object
- Julewire::Core::Fields::StaticLabels
- Defined in:
- lib/julewire/core/fields/static_labels.rb
Instance Method Summary collapse
- #add(fields = nil, **keyword_fields) ⇒ Object
- #clear ⇒ Object
- #copy ⇒ Object
- #freeze ⇒ Object
-
#initialize ⇒ StaticLabels
constructor
A new instance of StaticLabels.
- #remove(key) ⇒ Object
- #to_h ⇒ Object
Constructor Details
#initialize ⇒ StaticLabels
Returns a new instance of StaticLabels.
7 8 9 |
# File 'lib/julewire/core/fields/static_labels.rb', line 7 def initialize @fields = {} end |
Instance Method Details
#add(fields = nil, **keyword_fields) ⇒ Object
11 12 13 14 |
# File 'lib/julewire/core/fields/static_labels.rb', line 11 def add(fields = nil, **keyword_fields) FieldSet.merge!(@fields, FieldSet.coerce(fields, keyword_fields, invalid: :raise)) self end |
#clear ⇒ Object
16 17 18 19 |
# File 'lib/julewire/core/fields/static_labels.rb', line 16 def clear @fields.clear self end |
#copy ⇒ Object
30 31 32 33 34 |
# File 'lib/julewire/core/fields/static_labels.rb', line 30 def copy self.class.new.tap do |copy| copy.add(to_h) end end |
#freeze ⇒ Object
36 37 38 39 |
# File 'lib/julewire/core/fields/static_labels.rb', line 36 def freeze @fields.freeze super end |
#remove(key) ⇒ Object
21 22 23 24 |
# File 'lib/julewire/core/fields/static_labels.rb', line 21 def remove(key) Fields::Internal.delete_key!(@fields, key) self end |