- C
- G
- O
- P
- S
PointerMask | = | (1 << ([""].pack("p").size * 8)) - 1 |
PointerFormat | = | "%0#{$1.length}x" |
A convenience method which is same as follows:
text ','
breakable
# File lib/pp.rb, line 109 def guard_inspect_key if Thread.current[:__recursive_key__] == nil Thread.current[:__recursive_key__] = {}.untrust end if Thread.current[:__recursive_key__][:inspect] == nil Thread.current[:__recursive_key__][:inspect] = {}.untrust end save = Thread.current[:__recursive_key__][:inspect] begin Thread.current[:__recursive_key__][:inspect] = {}.untrust yield ensure Thread.current[:__recursive_key__][:inspect] = save end end
A convenience method which is same as follows:
group(1, '#<' + obj.class.name, '>') { ... }
Adds obj
to the pretty printing buffer using Object#pretty_print or Object#pretty_print_cycle.
Object#pretty_print_cycle
is used when obj
is already printed, a.k.a the object
reference chain has a cycle.
Adds a separated list. The list is separated by comma with breakable space, by default.
seplist iterates the
list
using iter_method
. It yields each object to
the block given for seplist.
The procedure separator_proc
is called between each yields.
If the iteration is zero times, separator_proc
is not called
at all.
If separator_proc
is nil or not given, +lambda { #comma_breakable }+ is
used. If iter_method
is not given, :each is used.
For example, following 3 code fragments has similar effect.
q.seplist([1,2,3]) {|v| xxx v }
q.seplist([1,2,3], lambda { q.comma_breakable }, :each) {|v| xxx v }
xxx 1
q.comma_breakable
xxx 2
q.comma_breakable
xxx 3