mirror of
https://github.com/awesome-print/awesome_print
synced 2023-03-27 23:22:34 -04:00
Replace array.inject with faster array.map
This commit is contained in:
parent
b447e8e33d
commit
3c14c1b747
1 changed files with 5 additions and 6 deletions
|
@ -66,8 +66,7 @@ class AwesomePrint
|
||||||
end
|
end
|
||||||
"[\n" << data.join(",\n") << "\n#{outdent}]"
|
"[\n" << data.join(",\n") << "\n#{outdent}]"
|
||||||
else
|
else
|
||||||
data = a.inject([]) { |arr, item| arr << awesome(item) }
|
"[ " << a.map{ |item| awesome(item) }.join(", ") << " ]"
|
||||||
"[ #{data.join(', ')} ]"
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -76,23 +75,23 @@ class AwesomePrint
|
||||||
def awesome_hash(h)
|
def awesome_hash(h)
|
||||||
return "{}" if h == {}
|
return "{}" if h == {}
|
||||||
|
|
||||||
data = h.keys.inject([]) do |arr, key|
|
data = h.keys.map do |key|
|
||||||
plain_single_line do
|
plain_single_line do
|
||||||
arr << [ awesome(key), h[key] ]
|
[ awesome(key), h[key] ]
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
width = data.map { |key, | key.size }.max || 0
|
width = data.map { |key, | key.size }.max || 0
|
||||||
width += @indentation if @options[:indent] > 0
|
width += @indentation if @options[:indent] > 0
|
||||||
|
|
||||||
data = data.inject([]) do |arr, (key, value)|
|
data = data.map do |key, value|
|
||||||
if @options[:multiline]
|
if @options[:multiline]
|
||||||
formatted_key = (@options[:indent] >= 0 ? key.rjust(width) : indent + key.ljust(width))
|
formatted_key = (@options[:indent] >= 0 ? key.rjust(width) : indent + key.ljust(width))
|
||||||
else
|
else
|
||||||
formatted_key = key
|
formatted_key = key
|
||||||
end
|
end
|
||||||
indented do
|
indented do
|
||||||
arr << (formatted_key << colorize(" => ", :hash) << awesome(value))
|
formatted_key << colorize(" => ", :hash) << awesome(value)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
if @options[:multiline]
|
if @options[:multiline]
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue