Module: Roll::Attributes::ClassMethods

Defined in:
lib/roll/attributes.rb

Instance Method Summary collapse

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_attributesObject



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(message, &block)
  validation << [message, block]
end

#validationObject



53
54
55
# File 'lib/roll/attributes.rb', line 53

def validation
  @@validation ||= []
end