helium-console 0.1.0 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f9dc5199dab8e2122be6f6601ac154b823a0f0c6a89b2fc52d7ce6e97ddb8122
4
- data.tar.gz: 9fd7a98d45dd3e4ee441680a35e2f740f2cd44a01e403d4fa86e86f48a21f30a
3
+ metadata.gz: 6cc078f13cb540c2c2c9d14814cfe31da3b50ebdb59051918db1ac3d3fc63b51
4
+ data.tar.gz: c9fd23846bad166de9fd715c4166e60a162df08a6f820277c0815f539dac6306
5
5
  SHA512:
6
- metadata.gz: 12758df2c4c32118f8416691d4179ccb53d85f8bc22fd4a46907f09c678f4a5d5fec4cee6df0f33e250d7e6ebf2e8624c453bd5c12eb44be376c949e01c48627
7
- data.tar.gz: a2d9e9a75f7005aad6044639b783df65f59ad1bf570154829e51e841d1c74b995e31fceba3055fdb7c00614054717126bee99b56111be370a2f672aa34e0fc7b
6
+ metadata.gz: 9259047186f54a53e8378d8fc0c94c35a895334acfb97950ba22511453aa4a0b855866c94d22b323c2249847cf112bcec126ef63ec0c71764fc3dce6c8038213
7
+ data.tar.gz: 475285e8aae66982bfc86cf3250fbb6e97f88eddf7e7c14228b7158fd8694981c227cc8185e9794869d1c0be27ae6a7f97b789e15269c61a575c850a64ad1263
data/.gitignore CHANGED
@@ -9,3 +9,5 @@
9
9
 
10
10
  # rspec failure tracking
11
11
  .rspec_status
12
+
13
+ .byebug_history
data/Gemfile.lock CHANGED
@@ -1,15 +1,22 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- helium-console (0.1.0)
5
- ruby-terminfo
4
+ helium-console (0.1.5)
5
+ colorize
6
+ pry
6
7
 
7
8
  GEM
8
9
  remote: https://rubygems.org/
9
10
  specs:
10
11
  byebug (11.1.3)
12
+ coderay (1.1.3)
13
+ colorize (0.8.1)
11
14
  diff-lcs (1.4.4)
12
15
  ffaker (2.18.0)
16
+ method_source (1.0.0)
17
+ pry (0.14.1)
18
+ coderay (~> 1.1)
19
+ method_source (~> 1.0)
13
20
  rake (12.3.3)
14
21
  rspec (3.10.0)
15
22
  rspec-core (~> 3.10.0)
@@ -24,7 +31,6 @@ GEM
24
31
  diff-lcs (>= 1.2.0, < 2.0)
25
32
  rspec-support (~> 3.10.0)
26
33
  rspec-support (3.10.2)
27
- ruby-terminfo (0.1.1)
28
34
 
29
35
  PLATFORMS
30
36
  ruby
data/bin/console CHANGED
@@ -3,12 +3,13 @@
3
3
  require "bundler/setup"
4
4
  require "helium/console"
5
5
 
6
- # You can add fixtures and/or initialization code here to make experimenting
7
- # with your gem easier. You can also use a different console, if you like.
6
+ require 'byebug'
7
+ require 'ffaker'
8
8
 
9
- # (If you use this, don't forget to add pry to your Gemfile!)
10
- # require "pry"
11
- # Pry.start
9
+ class A
10
+ def initialize(a)
11
+ @a = a
12
+ end
13
+ end
12
14
 
13
- require "irb"
14
- IRB.start(__FILE__)
15
+ Pry.start
@@ -22,5 +22,6 @@ Gem::Specification.new do |spec|
22
22
  spec.bindir = "exe"
23
23
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
24
24
  spec.require_paths = ["lib"]
25
- spec.add_dependency "ruby-terminfo"
25
+ spec.add_dependency "pry"
26
+ spec.add_dependency "colorize"
26
27
  end
@@ -1,26 +1,102 @@
1
- require "helium/console/version"
1
+ require "pry"
2
2
 
3
+ require "helium/console/version"
3
4
  require "helium/console/formatters/indent"
4
5
  require "helium/console/formatters/overflow"
5
6
  require "helium/console/formatters/max_lines"
6
- require "terminfo"
7
+ require "helium/console/table"
8
+ require "helium/console/registry"
9
+
10
+ require "helium/console/printer"
7
11
 
8
12
  module Helium
9
- module Console
13
+ class Console
10
14
  Error = Class.new(StandardError)
11
15
 
16
+ SIMPLE_OBJECTS = [
17
+ Numeric,
18
+ NilClass,
19
+ FalseClass,
20
+ TrueClass,
21
+ Symbol
22
+ ]
23
+
12
24
  class << self
13
- def format(text, overflow: :wrap, indent: 0, max_lines: nil, max_width: TermInfo.screen_width)
14
- formatters = [
15
- Formatters::Overflow.get(overflow).new(max_width: max_width - indent),
16
- Formatters::Indent.new(indent),
17
- Formatters::MaxLines.new(max_lines: max_lines, max_width: max_width)
18
- ]
19
-
20
- formatters.inject(text) do |text, formatter|
21
- formatter.call(text)
22
- end
25
+ def instance
26
+ @instance ||= new(registry: Registry.new)
27
+ end
28
+
29
+ def method_missing(name, *args, &block)
30
+ super unless instance.respond_to?(name)
31
+
32
+ instance.public_send(name, *args, &block)
33
+ end
34
+ end
35
+
36
+ def initialize(registry:)
37
+ @registry = registry
38
+ end
39
+
40
+ def format(object, **options)
41
+ options = default_options.merge(options)
42
+ return "(...)" if options[:ignore_objects].include?(object.object_id)
43
+
44
+ handler = registry.handler_for(object, **options)
45
+
46
+ if handler
47
+ handler.call
48
+ else
49
+ format(object.inspect, **options)
23
50
  end
24
51
  end
52
+
53
+ def register(klass, &handler)
54
+ registry.add(klass, &handler)
55
+ end
56
+
57
+ def define_formatter_for(klass, &handler)
58
+ registry.define(klass, &handler)
59
+ end
60
+
61
+ def simple?(object)
62
+ SIMPLE_OBJECTS.any? {|simple_obj_class| object.is_a? simple_obj_class } ||
63
+ registry.handler_for(object).is_simple
64
+ end
65
+
66
+ def default_options
67
+ {
68
+ overflow: :wrap,
69
+ indent: 0,
70
+ max_width: `tput cols`.chomp.to_i,
71
+ level: 1,
72
+ ignore_objects: [],
73
+ }
74
+ end
75
+
76
+ def format_string(string, ellipses: "...", **options)
77
+ options = default_options.merge(options)
78
+
79
+ formatters = [
80
+ Formatters::Overflow.get(options[:overflow]).new(max_width: options[:max_width] - options[:indent]),
81
+ Formatters::Indent.new(options[:indent]),
82
+ Formatters::MaxLines.new(
83
+ max_lines: options[:max_lines],
84
+ max_width: options[:max_width],
85
+ ellipses: ellipses
86
+ )
87
+ ]
88
+
89
+ formatters.inject(string) do |string, formatter|
90
+ formatter.call(string)
91
+ end
92
+ end
93
+
94
+ private
95
+
96
+ attr_reader :registry
25
97
  end
26
98
  end
99
+
100
+ Dir.glob(File.join(File.dirname(__FILE__), "console", "registry", "**/*.rb")).each do |file|
101
+ require file
102
+ end
@@ -1,5 +1,5 @@
1
1
  module Helium
2
- module Console
2
+ class Console
3
3
  module Formatters
4
4
  class Indent
5
5
  def initialize(indent)
@@ -1,11 +1,13 @@
1
1
  module Helium
2
- module Console
2
+ class Console
3
3
  module Formatters
4
4
  class MaxLines
5
- ELLIPSES = "..."
6
- def initialize(max_lines:, max_width:)
5
+ ELLIPSES = "...\""
6
+
7
+ def initialize(max_lines:, max_width:, ellipses:)
7
8
  @max_lines = max_lines
8
9
  @max_width = max_width
10
+ @ellipses = ellipses
9
11
  end
10
12
 
11
13
  def call(string)
@@ -13,7 +15,7 @@ module Helium
13
15
 
14
16
  lines = string.lines.first(@max_lines)
15
17
  last_line = lines.pop
16
- lines << last_line.chars.first(@max_width - ELLIPSES.length).join + ELLIPSES
18
+ lines << last_line.chars.first(@max_width - @ellipses.length).join + @ellipses
17
19
  lines.join()
18
20
  end
19
21
  end
@@ -1,6 +1,6 @@
1
1
 
2
2
  module Helium
3
- module Console
3
+ class Console
4
4
  module Formatters
5
5
  module Overflow
6
6
  def self.get(type)
@@ -1,5 +1,5 @@
1
1
  module Helium
2
- module Console
2
+ class Console
3
3
  module Formatters
4
4
  module Overflow
5
5
  class Wrap
@@ -0,0 +1,20 @@
1
+ module Helium
2
+ class Console
3
+ class ColorPrinter < Pry::ColorPrinter
4
+ def self.pp(obj, output = $DEFAULT_OUTPUT, max_width = 79)
5
+ queue = ColorPrinter.new(output, max_width, "\n")
6
+ queue.guard_inspect_key { queue.pp(obj) }
7
+ queue.flush
8
+ output << "\n"
9
+ end
10
+
11
+ def pp(object)
12
+ formatted = Helium::Console.format(object)
13
+ formatted = $/ + formatted if formatted.lines.count > 1
14
+ output << formatted
15
+ end
16
+
17
+ ::Pry.config.print = self.method(:default)
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,74 @@
1
+ require 'colorized_string'
2
+
3
+ module Helium
4
+ class Console
5
+ class Registry
6
+ class Element
7
+ def initialize(object, **options)
8
+ @object = object
9
+ @options = options
10
+ end
11
+
12
+ attr_reader :object, :options
13
+
14
+ def format_nested(other_object, **options)
15
+ Helium::Console.format(other_object, **nested_opts(options))
16
+ end
17
+
18
+ def format(other_object, **options)
19
+ Helium::Console.format(other_object, **nested_opts(options, increase_level: false))
20
+ end
21
+
22
+ def format_string(string, **options)
23
+ Helium::Console.format_string(string, **options)
24
+ end
25
+
26
+ def simple?(object)
27
+ Helium::Console.simple?(object)
28
+ end
29
+
30
+ def is_simple
31
+ false
32
+ end
33
+
34
+ def method_missing(name, *args)
35
+ return @options[name] if @options.key?(name)
36
+ if ColorizedString.colors.include?(name)
37
+ return ColorizedString.new(*args).colorize(name)
38
+ end
39
+ super
40
+ end
41
+
42
+ def nested_opts(new_options, increase_level: true)
43
+ new_options = options.merge(new_options)
44
+ new_options[:level] += 1 if increase_level
45
+ new_options[:ignore_objects] << object.object_id
46
+ new_options
47
+ end
48
+ end
49
+
50
+ def add(klass, &handler)
51
+ define(klass) do
52
+ define_method(:call, &handler)
53
+ end
54
+ end
55
+
56
+ def define(klass, &block)
57
+ handlers[klass] = Class.new(Element, &block)
58
+ end
59
+
60
+ def handler_for(object, **options)
61
+ object.class.ancestors.each do |ancestor|
62
+ return handlers[ancestor].new(object, **options) if handlers.key?(ancestor)
63
+ end
64
+ nil
65
+ end
66
+
67
+ private
68
+
69
+ def handlers
70
+ @handlers ||= {}
71
+ end
72
+ end
73
+ end
74
+ end
@@ -0,0 +1,75 @@
1
+ module Helium
2
+ class Console
3
+ define_formatter_for Array do
4
+ def call
5
+ return "[]" if object.none?
6
+ return format_inline_with_truncation if force_inline?
7
+
8
+ format_inline_with_no_truncation || format_as_table
9
+ end
10
+
11
+ def is_simple
12
+ object.none?
13
+ end
14
+
15
+ private
16
+
17
+ def format_as_table
18
+ table = Table.new(runner: ' ', format_keys: false)
19
+ object.each.with_index do |element, index|
20
+ table.row(light_black("[#{index}]:"), element)
21
+ end
22
+
23
+ [
24
+ "[",
25
+ format(table),
26
+ "]"
27
+ ].join($/)
28
+ end
29
+
30
+ def format_inline_with_truncation
31
+ joined = nil
32
+ trunc = nil
33
+ total = object.length
34
+
35
+ object.each.with_index do |element, index|
36
+ formatted = format_nested(element, max_lines: 1, nesting: 1, max_width: 15)
37
+
38
+ new_joined = [joined, formatted].compact.join(" | ")
39
+ new_trunc = (" | (#{total - index - 1} #{index.zero? ? 'elements' : 'more'})" unless index == total - 1)
40
+
41
+ break if new_joined.length > max_width - (new_trunc&.length || 0) - 4
42
+
43
+ joined = new_joined
44
+ trunc = new_trunc
45
+ end
46
+
47
+ if joined
48
+ joined = [" ", joined, trunc, " "].compact.join if joined
49
+ ["[", joined, "]"].compact.join
50
+ else
51
+ "[...(#{object.length})]"
52
+ end
53
+ end
54
+
55
+ def format_inline_with_no_truncation
56
+ joined = nil
57
+
58
+ object.each do |element|
59
+ return unless simple?(element)
60
+
61
+ formatted = format_nested(element)
62
+ joined = [joined, formatted].compact.join(" | ")
63
+
64
+ return if joined.length > max_width - 4
65
+ end
66
+ joined = " #{joined} " if joined
67
+ ["[", joined, "]"].compact.join
68
+ end
69
+
70
+ def force_inline?
71
+ level > 2
72
+ end
73
+ end
74
+ end
75
+ end
@@ -0,0 +1,15 @@
1
+ module Helium
2
+ class Console
3
+ define_formatter_for TrueClass do
4
+ def call
5
+ green('true')
6
+ end
7
+ end
8
+
9
+ define_formatter_for FalseClass do
10
+ def call
11
+ red('false')
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,81 @@
1
+ module Helium
2
+ class Console
3
+ define_formatter_for Hash do
4
+ def call
5
+ return format_inline_with_truncation if force_inline?
6
+ format_inline_with_no_truncation || format_as_table
7
+ end
8
+
9
+ private
10
+
11
+ def format_as_table
12
+ table = Table.new(runner: ' ', after_key: after_key, format_keys: !all_symbol?)
13
+ object.each do |key, value|
14
+ key = light_blue(key.to_s) if all_symbol?
15
+ table.row(key, value)
16
+ end
17
+
18
+ [
19
+ "{",
20
+ format(table, **options),
21
+ "}"
22
+ ].join($/)
23
+ end
24
+
25
+ def format_inline_with_truncation
26
+ joined = nil
27
+ trunc = nil
28
+ total = object.length
29
+
30
+ object.each.with_index do |(key, value), index|
31
+ formatted_key = format(key, max_lines: 1, nesting: 1, max_with: 15)
32
+ formatted_value = format(value, max_lines: 1, nesting: 1, max_width: 15)
33
+
34
+ formatted = "#{formatted_key} => #{formatted_value}"
35
+
36
+ new_joined = [joined, formatted].compact.join(", ")
37
+ new_trunc = (", (#{total - index - 1} #{index.zero? ? 'elements' : 'more'})" unless index == total - 1)
38
+
39
+ break if new_joined.length > max_width - (new_trunc&.length || 0) - 4
40
+
41
+ joined = new_joined
42
+ trunc = new_trunc
43
+ end
44
+
45
+ joined = [" ", joined, trunc, " "].compact.join if joined
46
+ ["{", joined, "}"].compact.join
47
+ end
48
+
49
+ def format_inline_with_no_truncation
50
+ joined = nil
51
+ one_complex = false
52
+
53
+ object.each do |key, value|
54
+ return unless simple?(value)
55
+
56
+ formatted_key = format(key, max_lines: 1, nesting: 1, max_with: 15)
57
+ formatted_value = format(value, max_lines: 1, nesting: 1, max_width: 15)
58
+ formatted = "#{formatted_key} => #{formatted_value}"
59
+
60
+ joined = [joined, formatted].compact.join(", ")
61
+
62
+ return if joined.length > max_width - 4
63
+ end
64
+ joined = " #{joined} " if joined
65
+ ["{", joined, "}"].compact.join
66
+ end
67
+
68
+ def force_inline?
69
+ level > 2
70
+ end
71
+
72
+ def all_symbol?
73
+ object.keys.all? { |key| key.is_a? Symbol }
74
+ end
75
+
76
+ def after_key
77
+ all_symbol? ? light_blue(": ") : light_black(" => ")
78
+ end
79
+ end
80
+ end
81
+ end
@@ -0,0 +1,16 @@
1
+ module Helium
2
+ class Console
3
+ define_formatter_for Module do
4
+ def call
5
+ light_yellow(object.name || anonymus_text)
6
+ end
7
+
8
+ private
9
+
10
+ def anonymus_text
11
+ closest = object.ancestors.find(&:name).name
12
+ "(ananymus #{closest})"
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,9 @@
1
+ module Helium
2
+ class Console
3
+ define_formatter_for NilClass do
4
+ def call
5
+ light_black('nil')
6
+ end
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module Helium
2
+ class Console
3
+ define_formatter_for Numeric do
4
+ def call
5
+ light_cyan(object.to_s)
6
+ end
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,64 @@
1
+ module Helium
2
+ class Console
3
+ define_formatter_for Object do
4
+ def call
5
+ return format_inline_with_truncation if force_inline?
6
+ format_as_table
7
+ end
8
+
9
+ private
10
+
11
+ def format_as_table
12
+ table = Table.new(runner: light_black('| '), after_key: light_black(": "), format_keys: false)
13
+
14
+ object.instance_variables.each do |inst|
15
+ table.row(magenta(inst.to_s), object.instance_variable_get(inst))
16
+ end
17
+
18
+ [
19
+ table_header,
20
+ format(table),
21
+ ].reject(&:empty?).join($/)
22
+ end
23
+
24
+ def format_inline_with_truncation
25
+ "#{object.class.name}##{object.object_id.to_s(16)}"
26
+ end
27
+
28
+ def format_inline_with_no_truncation
29
+ joined = nil
30
+
31
+ object.each do |key, value|
32
+ return unless simple?(value)
33
+
34
+ formatted_key = format(key, level: 3, max_with: 15)
35
+ formatted_value = format(value, level: 3, max_width: 15)
36
+ formatted = "#{formatted_key} => #{formatted_value}"
37
+
38
+ joined = [joined, formatted].compact.join(", ")
39
+
40
+ return if joined.length > max_width - 4
41
+ end
42
+ joined = " #{joined} " if joined
43
+ ["{", joined, "}"].compact.join
44
+ end
45
+
46
+ def table_header
47
+ type = case object
48
+ when Class then :class
49
+ when Module then :module
50
+ else :instance
51
+ end
52
+ "#{light_black('#')} #{light_yellow(type == :instance ? object.class.name : object.name)} #{type}"
53
+ end
54
+
55
+ def force_inline?
56
+ level > 2
57
+ end
58
+
59
+ def all_symbol?
60
+ object.keys.all? { |key| key.is_a? Symbol }
61
+ end
62
+ end
63
+ end
64
+ end
@@ -0,0 +1,27 @@
1
+ module Helium
2
+ class Console
3
+ define_formatter_for String do
4
+ def call
5
+ formatted = Helium::Console.format_string(
6
+ object.dump.gsub('\n', "\n"),
7
+ max_width: max_width,
8
+ max_lines: max_lines,
9
+ overflow: overflow,
10
+ ellipses: "...\""
11
+ )
12
+
13
+ formatted.lines
14
+ .map { |line| light_green(line) }
15
+ .join
16
+ end
17
+
18
+ def max_lines
19
+ case level
20
+ when 1 then nil
21
+ when 2 then 3
22
+ else 1
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,9 @@
1
+ module Helium
2
+ class Console
3
+ define_formatter_for Symbol do
4
+ def call
5
+ light_blue(':' + object.to_s)
6
+ end
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,75 @@
1
+ module Helium
2
+ class Console
3
+ define_formatter_for Table do
4
+ def call
5
+ [
6
+ *formatted_values,
7
+ truncation,
8
+ ].compact.join($/)
9
+ end
10
+
11
+ def formatted_values
12
+ rows.flat_map do |key, value|
13
+ formatted_value = format_nested(value, max_width: max_value_width)
14
+
15
+ formatted_value.lines.map.with_index do |line, index|
16
+ [
17
+ object.runner,
18
+ index.zero? ? rjust(format_key(key), key_width) : " " * key_width,
19
+ index.zero? ? object.after_key : " " * length_of(object.after_key),
20
+ line.chomp,
21
+ ].join
22
+ end
23
+ end
24
+ end
25
+
26
+ def truncation
27
+ return unless object.rows.length > rows.length
28
+
29
+ [
30
+ object.runner,
31
+ light_black("(#{object.rows.length - rows.length} more)")
32
+ ].join
33
+ end
34
+
35
+
36
+ def key_width
37
+ @key_width ||= rows
38
+ .map(&:first)
39
+ .map(&method(:format_key))
40
+ .map(&method(:length_of))
41
+ .max
42
+ end
43
+
44
+ def max_value_width
45
+ max_width - length_of(object.runner) - key_width - length_of(object.after_key)
46
+ end
47
+
48
+ def format_key(key)
49
+ object.format_keys ? format(key, max_width: 15, level: 3) : key
50
+ end
51
+
52
+ def rjust(string, width)
53
+ " " * (width - length_of(string)) + string
54
+ end
55
+
56
+ def length_of(string)
57
+ if string.respond_to?(:uncolorize)
58
+ string.uncolorize.length
59
+ else
60
+ string.length
61
+ end
62
+ end
63
+
64
+ def rows
65
+ @rows ||= case level
66
+ when 1 then object.rows
67
+ when 2
68
+ object.rows.count < 10 ? object.rows : object.rows.first(9)
69
+ else
70
+ object.rows.count < 3 ? object.rows : object.rows.first(2)
71
+ end
72
+ end
73
+ end
74
+ end
75
+ end
@@ -0,0 +1,22 @@
1
+ module Helium
2
+ class Console
3
+ class Table
4
+
5
+ def initialize(runner: "|", after_key: " ", format_keys: true)
6
+ @runner = runner
7
+ @after_key = after_key
8
+ @format_keys = format_keys
9
+ end
10
+
11
+ attr_reader :runner, :after_key, :format_keys
12
+
13
+ def row(key, value)
14
+ rows << [key, value]
15
+ end
16
+
17
+ def rows
18
+ @rows ||= []
19
+ end
20
+ end
21
+ end
22
+ end
@@ -1,5 +1,5 @@
1
1
  module Helium
2
- module Console
3
- VERSION = "0.1.0"
2
+ class Console
3
+ VERSION = "0.1.5"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,17 +1,31 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: helium-console
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stanislaw Klajn
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-05-22 00:00:00.000000000 Z
11
+ date: 2021-06-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: ruby-terminfo
14
+ name: pry
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: colorize
15
29
  requirement: !ruby/object:Gem::Requirement
16
30
  requirements:
17
31
  - - ">="
@@ -31,7 +45,6 @@ executables: []
31
45
  extensions: []
32
46
  extra_rdoc_files: []
33
47
  files:
34
- - ".byebug_history"
35
48
  - ".gitignore"
36
49
  - ".rspec"
37
50
  - ".travis.yml"
@@ -49,6 +62,19 @@ files:
49
62
  - lib/helium/console/formatters/max_lines.rb
50
63
  - lib/helium/console/formatters/overflow.rb
51
64
  - lib/helium/console/formatters/overflow/wrap.rb
65
+ - lib/helium/console/printer.rb
66
+ - lib/helium/console/registry.rb
67
+ - lib/helium/console/registry/array.rb
68
+ - lib/helium/console/registry/booleans.rb
69
+ - lib/helium/console/registry/hash.rb
70
+ - lib/helium/console/registry/module.rb
71
+ - lib/helium/console/registry/nil.rb
72
+ - lib/helium/console/registry/numeric.rb
73
+ - lib/helium/console/registry/object.rb
74
+ - lib/helium/console/registry/string.rb
75
+ - lib/helium/console/registry/symbol.rb
76
+ - lib/helium/console/registry/table.rb
77
+ - lib/helium/console/table.rb
52
78
  - lib/helium/console/version.rb
53
79
  homepage: https://github.com/helium-rb/console
54
80
  licenses:
data/.byebug_history DELETED
@@ -1,7 +0,0 @@
1
- c
2
- FFaker::Lorem.sentences(rand(4..10)).count
3
- FFaker::Lorem.sentences(rand(4..10))
4
- FFaker::Lorem.sentences
5
- FFaker::Lorem.sentence
6
- rand(4..10)
7
- text