From 18ffba64bdee370edf93de115215d15019e54f17 Mon Sep 17 00:00:00 2001 From: zzak Date: Sun, 19 May 2013 18:17:51 +0000 Subject: * lib/pp.rb: Document PP::ObjectMixin [Fixes GH-312] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 4 ++++ lib/pp.rb | 28 ++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+) diff --git a/ChangeLog b/ChangeLog index 7c3f53d89b..fe4e018c1e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Mon May 20 03:16:52 2013 Zachary Scott + + * lib/pp.rb: Document PP::ObjectMixin [Fixes GH-312] + Sun May 19 23:52:22 2013 Ayumu AIZAWA * test/webrick/test_htmlutils.rb: add test for WEBrick::HTMLUtils. diff --git a/lib/pp.rb b/lib/pp.rb index 18cc473509..b7dbef6ca1 100644 --- a/lib/pp.rb +++ b/lib/pp.rb @@ -300,6 +300,34 @@ class PP < PrettyPrint include PPMethods end + # Allows you to implement pretty print in your own class, for example: + # require 'pp' + # + # class Cat + # include PP::ObjectMixin + # + # attr_accessor :name, :age, :color + # + # def initialize name + # @name = name + # end + # + # def pretty_print q + # q.pp_object self + # end + # alias inspect pretty_print_inspect + # + # end + # + # In order to use this class, try the following: + # + # ginger = Cat.new("ginger") + # p ginger + # #=> # + # ginger.age = 2 + # ginger.color = "red" + # p ginger + # #=> # module ObjectMixin # 1. specific pretty_print # 2. specific inspect -- cgit v1.2.3