Class: EnumFields::EnumField
- Inherits:
-
Object
- Object
- EnumFields::EnumField
- Defined in:
- lib/enum_fields/enum_field.rb
Class Method Summary collapse
Instance Method Summary collapse
- #define! ⇒ Object
-
#initialize(model_class:, accessor:, definition:, options: {}) ⇒ EnumField
constructor
A new instance of EnumField.
Constructor Details
#initialize(model_class:, accessor:, definition:, options: {}) ⇒ EnumField
Returns a new instance of EnumField.
9 10 11 12 13 14 |
# File 'lib/enum_fields/enum_field.rb', line 9 def initialize(model_class:, accessor:, definition:, options: {}) @model_class = model_class @accessor = accessor.to_sym @column_name = .fetch(:column, @accessor).to_sym @definition = Definition.new(definition) end |
Class Method Details
.define(**args) ⇒ Object
5 6 7 |
# File 'lib/enum_fields/enum_field.rb', line 5 def self.define(**args) new(**args).define! end |
Instance Method Details
#define! ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/enum_fields/enum_field.rb', line 16 def define! store_definition! define_class_methods! define_instance_getter! define_instance_setter! define_property_methods! define_inquiry_methods! define_scopes! define_validation! end |