lib/judges/options.rb in judges-0.21.0 vs lib/judges/options.rb in judges-0.22.0
- old
+ new
@@ -50,35 +50,36 @@
def to_s
to_h.map do |k, v|
v = v.to_s
v = "#{v[0..3]}#{'*' * (v.length - 8)}#{v[-4..]}" if v.length > 8
"#{k} → \"#{v}\""
- end.join("\n")
+ end.sort.join("\n")
end
def to_h
- @to_h ||= begin
- pp = @pairs || []
- pp = pp.split(',') if pp.is_a?(String)
- if pp.is_a?(Array)
- pp = pp
- .compact
- .map(&:strip)
- .reject(&:empty?)
- .map { |s| s.split('=', 2) }
- .map { |a| a.size == 1 ? [a[0], nil] : a }
- .reject { |a| a[0].empty? }
+ @to_h ||=
+ begin
+ pp = @pairs || []
+ pp = pp.split(',') if pp.is_a?(String)
+ if pp.is_a?(Array)
+ pp = pp
+ .compact
+ .map(&:strip)
+ .reject(&:empty?)
+ .map { |s| s.split('=', 2) }
+ .map { |a| a.size == 1 ? [a[0], nil] : a }
+ .reject { |a| a[0].empty? }
+ .to_h
+ end
+ pp
+ .reject { |k, _| k.nil? }
+ .reject { |k, _| k.is_a?(String) && k.empty? }
.to_h
+ .transform_values { |v| v.nil? ? 'true' : v }
+ .transform_values { |v| v.is_a?(String) ? v.strip : v }
+ .transform_values { |v| v.is_a?(String) && v.match?(/^[0-9]+$/) ? v.to_i : v }
+ .transform_keys { |k| k.to_s.strip.upcase.to_sym }
end
- pp
- .reject { |k, _| k.nil? }
- .reject { |k, _| k.is_a?(String) && k.empty? }
- .to_h
- .transform_values { |v| v.nil? ? 'true' : v }
- .transform_values { |v| v.is_a?(String) ? v.strip : v }
- .transform_values { |v| v.is_a?(String) && v.match?(/^[0-9]+$/) ? v.to_i : v }
- .transform_keys { |k| k.to_s.strip.upcase.to_sym }
- end
end
# Get option by name.
others do |*args|
to_h[args[0].upcase.to_sym]