Benutzer:Oneup/Pastebin

aus Metalab, dem offenen Zentrum für meta-disziplinäre Magier und technisch-kreative Enthusiasten.
Wechseln zu: Navigation, Suche

how to write attr_accessor :foo style stuff in ruby

<code>
class Module
  def trace_attr(sym)
    self.module_eval %{
      def #{sym}
	printf "Accessing %s with value %s\n",
	  "#{sym}", @#{sym}.inspect
	@#{sym}
      end
    }
  end
end
class Dog
  trace_attr :name
  def initialize(string)
    @name = string
  end
end
Dog.new("Fido").name  # => Accessing name with value "Fido"
</code>