Module: Roll::Attributes::ClassMethods
- Defined in:
- lib/roll/attributes.rb
Instance Method Summary collapse
-
#alias_accessor(aliaz, name) ⇒ Object
Define an attribute alias.
-
#attr_accessor(name, *aliases) ⇒ Object
Define an attribute.
- #instance_attributes ⇒ Object
-
#validate(message, &block) ⇒ Object
# Does this class provide open access? def open_access? false end.
- #validation ⇒ Object
Instance Method Details
#alias_accessor(aliaz, name) ⇒ Object
Define an attribute alias.
48 49 50 51 |
# File 'lib/roll/attributes.rb', line 48 def alias_accessor(aliaz, name) alias_method aliaz, name alias_method "#{aliaz}=", "#{name}=" end |
#attr_accessor(name, *aliases) ⇒ Object
Define an attribute.
39 40 41 42 43 44 |
# File 'lib/roll/attributes.rb', line 39 def attr_accessor(name, *aliases) instance_attributes << name.to_s instance_attributes.uniq! super(name) aliases.each{ |aliaz| alias_accessor(aliaz, name) } end |
#instance_attributes ⇒ Object
33 34 35 |
# File 'lib/roll/attributes.rb', line 33 def instance_attributes @@attributes ||= [] end |
#validate(message, &block) ⇒ Object
# Does this class provide open access?
def open_access?
false
end
62 63 64 |
# File 'lib/roll/attributes.rb', line 62 def validate(, &block) validation << [, block] end |
#validation ⇒ Object
53 54 55 |
# File 'lib/roll/attributes.rb', line 53 def validation @@validation ||= [] end |