Module: Formed::Core::ClassMethods
- Defined in:
- lib/formed/core.rb
Instance Method Summary collapse
-
#===(object) ⇒ Object
Override the default class equality method to provide support for decorated models.
-
#filter_attributes ⇒ Object
Returns columns which shouldn’t be exposed while calling
#inspect
. -
#filter_attributes=(filter_attributes) ⇒ Object
Specifies columns which shouldn’t be exposed while calling
#inspect
. -
#generated_association_methods ⇒ Object
:nodoc:.
-
#inherited(child_class) ⇒ Object
:nodoc:.
-
#initialize_generated_modules ⇒ Object
:nodoc:.
-
#inspect ⇒ Object
Returns a string like ‘Post(id:integer, title:string, body:text)’.
-
#inspection_filter ⇒ Object
:nodoc:.
Instance Method Details
#===(object) ⇒ Object
Override the default class equality method to provide support for decorated models.
68 69 70 |
# File 'lib/formed/core.rb', line 68 def ===(object) # :nodoc: object.is_a?(self) end |
#filter_attributes ⇒ Object
Returns columns which shouldn’t be exposed while calling #inspect
.
32 33 34 35 36 37 38 |
# File 'lib/formed/core.rb', line 32 def filter_attributes if defined?(@filter_attributes) @filter_attributes else superclass.filter_attributes end end |
#filter_attributes=(filter_attributes) ⇒ Object
Specifies columns which shouldn’t be exposed while calling #inspect
.
41 42 43 44 |
# File 'lib/formed/core.rb', line 41 def filter_attributes=(filter_attributes) @inspection_filter = nil @filter_attributes = filter_attributes end |
#generated_association_methods ⇒ Object
:nodoc:
21 22 23 24 25 26 27 28 29 |
# File 'lib/formed/core.rb', line 21 def generated_association_methods # :nodoc: @generated_association_methods ||= begin mod = const_set(:GeneratedAssociationMethods, Module.new) private_constant :GeneratedAssociationMethods include mod mod end end |
#inherited(child_class) ⇒ Object
:nodoc:
8 9 10 11 12 13 14 15 |
# File 'lib/formed/core.rb', line 8 def inherited(child_class) # :nodoc: # initialize cache at class definition for thread safety unless child_class.base_class? klass = self klass = klass.superclass until klass.base_class? end super end |
#initialize_generated_modules ⇒ Object
:nodoc:
17 18 19 |
# File 'lib/formed/core.rb', line 17 def initialize_generated_modules # :nodoc: generated_association_methods end |
#inspect ⇒ Object
Returns a string like ‘Post(id:integer, title:string, body:text)’
58 59 60 61 62 63 64 65 |
# File 'lib/formed/core.rb', line 58 def inspect # :nodoc: if self == Formed::Base super else attr_list = attribute_types.map { |name, type| "#{name}: #{type.type}" } * ", " "#{super}(#{attr_list})" end end |
#inspection_filter ⇒ Object
:nodoc:
46 47 48 49 50 51 52 53 54 55 |
# File 'lib/formed/core.rb', line 46 def inspection_filter # :nodoc: if defined?(@filter_attributes) @inspection_filter ||= begin mask = InspectionMask.new(ActiveSupport::ParameterFilter::FILTERED) ActiveSupport::ParameterFilter.new(@filter_attributes, mask: mask) end else superclass.inspection_filter end end |