--Boundary_(ID_dx7Rsa0qwkPEsFgrENL8SA)
Content-type: text/plain; charset=utf-8
Content-transfer-encoding: 7BIT
Content-disposition: inline
Here's mine
--
Sylvain Joyeux
--Boundary_(ID_dx7Rsa0qwkPEsFgrENL8SA)
Content-type: application/x-ruby; name=knowledge.rb
Content-transfer-encoding: 7bit
Content-disposition: attachment; filename=knowledge.rb
class Module
def attribute(*attr_def, &init)
attr_def ttr_def[0..-2] + attr_def.last.to_a if Hash attr_def.last
attr_def.each do |name, defval|
by_object ash.new
define_method(name) { defval || ( by_object[object_id] || nstance_eval(&init) if init ) }
define_method("#{name}?") { send(name) }
define_method("#{name} { |value|
(class << self; self end).instance_eval { attr_accessor name }
instance_variable_set("@#{name}", value)
}
end
end
end
--Boundary_(ID_dx7Rsa0qwkPEsFgrENL8SA)--