Class: Hash

Inherits:
Object show all
Defined in:
lib/pretty_debug.rb,
lib/pretty_debug.rb

Overview

LTSV

Constant Summary collapse

SingleLength =
50
KeyLengthMax =
30

Instance Method Summary collapse

Instance Method Details

#inspectObject



230
231
232
233
234
235
236
237
# File 'lib/pretty_debug.rb', line 230

def inspect
	keys = self.keys.map(&:inspect)
	# When `self == empty?`, `...max` becomes `nil`. `to_i` turns it to `0`.
	w = keys.map(&:length).max.to_i.at_most(KeyLengthMax)
	[keys, values].transpose.map{|k, v| "#{k.ljust(w)} => #{v.inspect}"}
	.chain{|s| length < 2 || s.map(&:length).inject(:+) < SingleLength ?
		"{#{s.join(", ")}}" :  "{#$/#{s.join(",#$/").indent}#$/}"}
end

#ltsvObject



273
# File 'lib/pretty_debug.rb', line 273

def ltsv; map{|k, v| "#{k}:#{v.to_s.tr("\t", " ")}"}.join("\t") end