Module: ActiveRecord::TypedStore::Extension::ClassMethods
- Defined in:
- lib/active_record/typed_store/extension.rb
Instance Method Summary collapse
- #define_attribute_methods ⇒ Object
- #typed_store(store_attribute, options = {}, &block) ⇒ Object
-
#undefine_attribute_methods ⇒ Object
:nodoc:.
Instance Method Details
#define_attribute_methods ⇒ Object
35 36 37 38 |
# File 'lib/active_record/typed_store/extension.rb', line 35 def define_attribute_methods super define_typed_store_attribute_methods end |
#typed_store(store_attribute, options = {}, &block) ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/active_record/typed_store/extension.rb', line 21 def typed_store(store_attribute, ={}, &block) dsl = DSL.new(.fetch(:accessors, true), &block) serialize store_attribute, create_coder(store_attribute, dsl.columns).new([:coder]) store_accessor(store_attribute, dsl.accessors) register_typed_store_columns(store_attribute, dsl.columns) super(store_attribute, dsl) if defined?(super) dsl.accessors.each { |c| define_store_attribute_queries(store_attribute, c) } dsl end |
#undefine_attribute_methods ⇒ Object
:nodoc:
40 41 42 43 |
# File 'lib/active_record/typed_store/extension.rb', line 40 def undefine_attribute_methods # :nodoc: super if @typed_store_attribute_methods_generated @typed_store_attribute_methods_generated = false end |