class Class
Public Instance Methods
cattr(name = nil, value = :_nil, &block)
click to toggle source
# File lib/lib/base.rb, line 2 def cattr name = nil, value = :_nil, &block return CattrProxy.new(self) unless name if value != :_nil || block define_singleton_method(name) do |arg = :_nil| if arg == :_nil CattrProxy.new(self).send(name) else CattrProxy.new(self).send('%s=' % name, arg) end end if value != :_nil CattrProxy.new(self).send('%s=' % name, value) elsif block CattrProxy.new(self).send(name, value, &block) end else CattrProxy.new(self).send('%s=' % name, nil) end end