debug_helper 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +9 -0
  3. data/.travis.yml +5 -0
  4. data/CODE_OF_CONDUCT.md +74 -0
  5. data/Gemfile +6 -0
  6. data/Gemfile.lock +22 -0
  7. data/LICENSE.txt +21 -0
  8. data/README.md +593 -0
  9. data/Rakefile +10 -0
  10. data/bin/console +14 -0
  11. data/bin/setup +8 -0
  12. data/debug_helper.gemspec +37 -0
  13. data/lib/debug_helper.rb +154 -0
  14. data/lib/debug_helper/version.rb +3 -0
  15. data/markdown/readme/Rakefile +53 -0
  16. data/markdown/readme/class_inclusions.md +6 -0
  17. data/markdown/readme/class_links.md +5 -0
  18. data/markdown/readme/classes/array/circular/show.md +27 -0
  19. data/markdown/readme/classes/array/circular/show.rb +7 -0
  20. data/markdown/readme/classes/array/circular/show.yaml +5 -0
  21. data/markdown/readme/classes/array/circular/template.md +11 -0
  22. data/markdown/readme/classes/array/mixed/show.md +25 -0
  23. data/markdown/readme/classes/array/mixed/show.rb +4 -0
  24. data/markdown/readme/classes/array/mixed/show.yaml +8 -0
  25. data/markdown/readme/classes/array/mixed/template.md +9 -0
  26. data/markdown/readme/classes/array/nested/show.md +28 -0
  27. data/markdown/readme/classes/array/nested/show.rb +4 -0
  28. data/markdown/readme/classes/array/nested/show.yaml +11 -0
  29. data/markdown/readme/classes/array/nested/template.md +9 -0
  30. data/markdown/readme/classes/array/simple/show.md +22 -0
  31. data/markdown/readme/classes/array/simple/show.rb +4 -0
  32. data/markdown/readme/classes/array/simple/show.yaml +5 -0
  33. data/markdown/readme/classes/array/simple/template.md +9 -0
  34. data/markdown/readme/classes/array/template.md +9 -0
  35. data/markdown/readme/classes/hash/circular/show.md +33 -0
  36. data/markdown/readme/classes/hash/circular/show.rb +7 -0
  37. data/markdown/readme/classes/hash/circular/show.yaml +11 -0
  38. data/markdown/readme/classes/hash/circular/template.md +11 -0
  39. data/markdown/readme/classes/hash/mixed/show.md +38 -0
  40. data/markdown/readme/classes/hash/mixed/show.rb +8 -0
  41. data/markdown/readme/classes/hash/mixed/show.yaml +17 -0
  42. data/markdown/readme/classes/hash/mixed/template.md +9 -0
  43. data/markdown/readme/classes/hash/nested/show.md +54 -0
  44. data/markdown/readme/classes/hash/nested/show.rb +13 -0
  45. data/markdown/readme/classes/hash/nested/show.yaml +28 -0
  46. data/markdown/readme/classes/hash/nested/template.md +9 -0
  47. data/markdown/readme/classes/hash/simple/show.md +31 -0
  48. data/markdown/readme/classes/hash/simple/show.rb +4 -0
  49. data/markdown/readme/classes/hash/simple/show.yaml +14 -0
  50. data/markdown/readme/classes/hash/simple/template.md +9 -0
  51. data/markdown/readme/classes/hash/template.md +9 -0
  52. data/markdown/readme/classes/object/datetime/show.md +19 -0
  53. data/markdown/readme/classes/object/datetime/show.rb +4 -0
  54. data/markdown/readme/classes/object/datetime/show.yaml +2 -0
  55. data/markdown/readme/classes/object/datetime/template.md +9 -0
  56. data/markdown/readme/classes/object/range/show.md +19 -0
  57. data/markdown/readme/classes/object/range/show.rb +4 -0
  58. data/markdown/readme/classes/object/range/show.yaml +2 -0
  59. data/markdown/readme/classes/object/range/template.md +9 -0
  60. data/markdown/readme/classes/object/regexp/show.md +19 -0
  61. data/markdown/readme/classes/object/regexp/show.rb +4 -0
  62. data/markdown/readme/classes/object/regexp/show.yaml +2 -0
  63. data/markdown/readme/classes/object/regexp/template.md +9 -0
  64. data/markdown/readme/classes/object/template.md +11 -0
  65. data/markdown/readme/classes/string/multiline/show.md +25 -0
  66. data/markdown/readme/classes/string/multiline/show.rb +7 -0
  67. data/markdown/readme/classes/string/multiline/show.yaml +5 -0
  68. data/markdown/readme/classes/string/multiline/template.md +9 -0
  69. data/markdown/readme/classes/string/simple/show.md +20 -0
  70. data/markdown/readme/classes/string/simple/show.rb +4 -0
  71. data/markdown/readme/classes/string/simple/show.yaml +3 -0
  72. data/markdown/readme/classes/string/simple/template.md +9 -0
  73. data/markdown/readme/classes/string/template.md +5 -0
  74. data/markdown/readme/classes/struct/circular/show.md +45 -0
  75. data/markdown/readme/classes/struct/circular/show.rb +8 -0
  76. data/markdown/readme/classes/struct/circular/show.yaml +22 -0
  77. data/markdown/readme/classes/struct/circular/template.md +11 -0
  78. data/markdown/readme/classes/struct/mixed/show.md +32 -0
  79. data/markdown/readme/classes/struct/mixed/show.rb +5 -0
  80. data/markdown/readme/classes/struct/mixed/show.yaml +14 -0
  81. data/markdown/readme/classes/struct/mixed/template.md +9 -0
  82. data/markdown/readme/classes/struct/nested/show.md +43 -0
  83. data/markdown/readme/classes/struct/nested/show.rb +8 -0
  84. data/markdown/readme/classes/struct/nested/show.yaml +22 -0
  85. data/markdown/readme/classes/struct/nested/template.md +9 -0
  86. data/markdown/readme/classes/struct/simple/show.md +29 -0
  87. data/markdown/readme/classes/struct/simple/show.rb +5 -0
  88. data/markdown/readme/classes/struct/simple/show.yaml +11 -0
  89. data/markdown/readme/classes/struct/simple/template.md +9 -0
  90. data/markdown/readme/classes/struct/template.md +9 -0
  91. data/markdown/readme/classes/symbol/simple/show.md +18 -0
  92. data/markdown/readme/classes/symbol/simple/show.rb +3 -0
  93. data/markdown/readme/classes/symbol/simple/show.yaml +2 -0
  94. data/markdown/readme/classes/symbol/simple/template.md +9 -0
  95. data/markdown/readme/classes/symbol/template.md +3 -0
  96. data/markdown/readme/classes/template.md +12 -0
  97. data/markdown/readme/show_array.rb +3 -0
  98. data/markdown/readme/show_hash.rb +3 -0
  99. data/markdown/readme/template.md +25 -0
  100. metadata +186 -0
@@ -0,0 +1,4 @@
1
+ require 'debug_helper'
2
+
3
+ datetime = DateTime.now
4
+ DebugHelper.show(datetime, 'My datetime')
@@ -0,0 +1,2 @@
1
+ --- DateTime (name='My datetime') 2018-06-29T17:20:16-05:00
2
+ ...
@@ -0,0 +1,9 @@
1
+ #### DateTime
2
+
3
+ This example shows a datetime.
4
+
5
+ @[ruby](show.rb)
6
+
7
+ The output shows details of the datetime.
8
+
9
+ @[yaml](show.yaml)
@@ -0,0 +1,19 @@
1
+ #### Range
2
+
3
+ This example shows a range.
4
+
5
+ ```show.rb```:
6
+ ```ruby
7
+ require 'debug_helper'
8
+
9
+ range = Range.new(0, 9)
10
+ DebugHelper.show(range, 'My range')
11
+ ```
12
+
13
+ The output shows details of the range.
14
+
15
+ ```show.yaml```:
16
+ ```yaml
17
+ --- Range (name='My range') 0..9
18
+ ...
19
+ ```
@@ -0,0 +1,4 @@
1
+ require 'debug_helper'
2
+
3
+ range = Range.new(0, 9)
4
+ DebugHelper.show(range, 'My range')
@@ -0,0 +1,2 @@
1
+ --- Range (name='My range') 0..9
2
+ ...
@@ -0,0 +1,9 @@
1
+ #### Range
2
+
3
+ This example shows a range.
4
+
5
+ @[ruby](show.rb)
6
+
7
+ The output shows details of the range.
8
+
9
+ @[yaml](show.yaml)
@@ -0,0 +1,19 @@
1
+ #### Regexp
2
+
3
+ This example shows a regexp.
4
+
5
+ ```show.rb```:
6
+ ```ruby
7
+ require 'debug_helper'
8
+
9
+ regexp = Regexp.new('foo')
10
+ DebugHelper.show(regexp, 'My regexp')
11
+ ```
12
+
13
+ The output shows details of the regexp.
14
+
15
+ ```show.yaml```:
16
+ ```yaml
17
+ --- Regexp (name='My regexp') (?-mix:foo)
18
+ ...
19
+ ```
@@ -0,0 +1,4 @@
1
+ require 'debug_helper'
2
+
3
+ regexp = Regexp.new('foo')
4
+ DebugHelper.show(regexp, 'My regexp')
@@ -0,0 +1,2 @@
1
+ --- Regexp (name='My regexp') (?-mix:foo)
2
+ ...
@@ -0,0 +1,9 @@
1
+ #### Regexp
2
+
3
+ This example shows a regexp.
4
+
5
+ @[ruby](show.rb)
6
+
7
+ The output shows details of the regexp.
8
+
9
+ @[yaml](show.yaml)
@@ -0,0 +1,11 @@
1
+ ### Object
2
+
3
+ Classes not mentioned above are not analyzed, but are treated more simply.
4
+
5
+ A few examples are shown below.
6
+
7
+ @[:markdown](datetime/show.md)
8
+
9
+ @[:markdown](range/show.md)
10
+
11
+ @[:markdown](regexp/show.md)
@@ -0,0 +1,25 @@
1
+ #### Multiline String
2
+
3
+ This example shows a multiline string.
4
+
5
+ ```show.rb```:
6
+ ```ruby
7
+ require 'debug_helper'
8
+
9
+ s = <<EOT
10
+ Lorem Ipsum dolor sit amet,consectetur adipisicing elit,
11
+ sed doeiusmod tempor incididunt ut laboreet dolore magna aliqua.
12
+ EOT
13
+ DebugHelper.show(s, 'My multiline string')
14
+ ```
15
+
16
+ The output shows details of the string.
17
+
18
+ ```show.yaml```:
19
+ ```yaml
20
+ ---
21
+ String (name='My multiline string' size=122 encoding=UTF-8 ascii_only=true bytesize=122):
22
+ - |
23
+ Lorem Ipsum dolor sit amet,consectetur adipisicing elit,
24
+ sed doeiusmod tempor incididunt ut laboreet dolore magna aliqua.
25
+ ```
@@ -0,0 +1,7 @@
1
+ require 'debug_helper'
2
+
3
+ s = <<EOT
4
+ Lorem Ipsum dolor sit amet,consectetur adipisicing elit,
5
+ sed doeiusmod tempor incididunt ut laboreet dolore magna aliqua.
6
+ EOT
7
+ DebugHelper.show(s, 'My multiline string')
@@ -0,0 +1,5 @@
1
+ ---
2
+ String (name='My multiline string' size=122 encoding=UTF-8 ascii_only=true bytesize=122):
3
+ - |
4
+ Lorem Ipsum dolor sit amet,consectetur adipisicing elit,
5
+ sed doeiusmod tempor incididunt ut laboreet dolore magna aliqua.
@@ -0,0 +1,9 @@
1
+ #### Multiline String
2
+
3
+ This example shows a multiline string.
4
+
5
+ @[ruby](show.rb)
6
+
7
+ The output shows details of the string.
8
+
9
+ @[yaml](show.yaml)
@@ -0,0 +1,20 @@
1
+ #### Simple String
2
+
3
+ This example shows a simple string.
4
+
5
+ ```show.rb```:
6
+ ```ruby
7
+ require 'debug_helper'
8
+
9
+ s = 'Lorem ipsum'
10
+ DebugHelper.show(s, 'My simple string')
11
+ ```
12
+
13
+ The output shows details of the string.
14
+
15
+ ```show.yaml```:
16
+ ```yaml
17
+ ---
18
+ String (name='My simple string' size=11 encoding=UTF-8 ascii_only=true bytesize=11):
19
+ - Lorem ipsum
20
+ ```
@@ -0,0 +1,4 @@
1
+ require 'debug_helper'
2
+
3
+ s = 'Lorem ipsum'
4
+ DebugHelper.show(s, 'My simple string')
@@ -0,0 +1,3 @@
1
+ ---
2
+ String (name='My simple string' size=11 encoding=UTF-8 ascii_only=true bytesize=11):
3
+ - Lorem ipsum
@@ -0,0 +1,9 @@
1
+ #### Simple String
2
+
3
+ This example shows a simple string.
4
+
5
+ @[ruby](show.rb)
6
+
7
+ The output shows details of the string.
8
+
9
+ @[yaml](show.yaml)
@@ -0,0 +1,5 @@
1
+ ### String
2
+
3
+ @[:markdown](simple/show.md)
4
+
5
+ @[:markdown](multiline/show.md)
@@ -0,0 +1,45 @@
1
+ #### Circular Structs
2
+
3
+ This example shows structs that make a circular reference.
4
+
5
+ ```show.rb```:
6
+ ```ruby
7
+ require 'debug_helper'
8
+
9
+ MyStruct = Struct.new(:a, :b, :c)
10
+ struct_0 = MyStruct.new(0, 1, 2)
11
+ struct_1 = MyStruct.new(3, 4, 5)
12
+ struct_0.a = struct_1
13
+ struct_1.a = struct_0
14
+ DebugHelper.show(struct_0, 'My circular struct')
15
+ ```
16
+
17
+ The output shows details of the structs.
18
+
19
+ The circular reference is not followed.
20
+
21
+ ```show.yaml```:
22
+ ```yaml
23
+ ---
24
+ MyStruct (name='My circular struct' size=3):
25
+ Member 0:
26
+ Name: :a
27
+ Value:
28
+ MyStruct (size=3):
29
+ Member 0:
30
+ Name: :a
31
+ Value: 'MyStruct #<struct MyStruct a=#<struct MyStruct a=#<struct MyStruct:...>,
32
+ b=4, c=5>, b=1, c=2>'
33
+ Member 1:
34
+ Name: :b
35
+ Value: Fixnum 4
36
+ Member 2:
37
+ Name: :c
38
+ Value: Fixnum 5
39
+ Member 1:
40
+ Name: :b
41
+ Value: Fixnum 1
42
+ Member 2:
43
+ Name: :c
44
+ Value: Fixnum 2
45
+ ```
@@ -0,0 +1,8 @@
1
+ require 'debug_helper'
2
+
3
+ MyStruct = Struct.new(:a, :b, :c)
4
+ struct_0 = MyStruct.new(0, 1, 2)
5
+ struct_1 = MyStruct.new(3, 4, 5)
6
+ struct_0.a = struct_1
7
+ struct_1.a = struct_0
8
+ DebugHelper.show(struct_0, 'My circular struct')
@@ -0,0 +1,22 @@
1
+ ---
2
+ MyStruct (name='My circular struct' size=3):
3
+ Member 0:
4
+ Name: :a
5
+ Value:
6
+ MyStruct (size=3):
7
+ Member 0:
8
+ Name: :a
9
+ Value: 'MyStruct #<struct MyStruct a=#<struct MyStruct a=#<struct MyStruct:...>,
10
+ b=4, c=5>, b=1, c=2>'
11
+ Member 1:
12
+ Name: :b
13
+ Value: Fixnum 4
14
+ Member 2:
15
+ Name: :c
16
+ Value: Fixnum 5
17
+ Member 1:
18
+ Name: :b
19
+ Value: Fixnum 1
20
+ Member 2:
21
+ Name: :c
22
+ Value: Fixnum 2
@@ -0,0 +1,11 @@
1
+ #### Circular Structs
2
+
3
+ This example shows structs that make a circular reference.
4
+
5
+ @[ruby](show.rb)
6
+
7
+ The output shows details of the structs.
8
+
9
+ The circular reference is not followed.
10
+
11
+ @[yaml](show.yaml)
@@ -0,0 +1,32 @@
1
+ #### Mixed Struct
2
+
3
+ This example shows a struct of mixed values.
4
+
5
+ ```show.rb```:
6
+ ```ruby
7
+ require 'debug_helper'
8
+
9
+ MyStruct = Struct.new(:a, :b, :c)
10
+ struct = MyStruct.new(0, 'one', :two)
11
+ DebugHelper.show(struct, 'My mixed struct')
12
+ ```
13
+
14
+ The output shows details of the struct.
15
+
16
+ ```show.yaml```:
17
+ ```yaml
18
+ ---
19
+ MyStruct (name='My mixed struct' size=3):
20
+ Member 0:
21
+ Name: :a
22
+ Value: Fixnum 0
23
+ Member 1:
24
+ Name: :b
25
+ Value:
26
+ String (size=3 encoding=UTF-8 ascii_only=true bytesize=3):
27
+ - one
28
+ Member 2:
29
+ Name: :c
30
+ Value:
31
+ Symbol (size=3 encoding=US-ASCII): :two
32
+ ```
@@ -0,0 +1,5 @@
1
+ require 'debug_helper'
2
+
3
+ MyStruct = Struct.new(:a, :b, :c)
4
+ struct = MyStruct.new(0, 'one', :two)
5
+ DebugHelper.show(struct, 'My mixed struct')
@@ -0,0 +1,14 @@
1
+ ---
2
+ MyStruct (name='My mixed struct' size=3):
3
+ Member 0:
4
+ Name: :a
5
+ Value: Fixnum 0
6
+ Member 1:
7
+ Name: :b
8
+ Value:
9
+ String (size=3 encoding=UTF-8 ascii_only=true bytesize=3):
10
+ - one
11
+ Member 2:
12
+ Name: :c
13
+ Value:
14
+ Symbol (size=3 encoding=US-ASCII): :two
@@ -0,0 +1,9 @@
1
+ #### Mixed Struct
2
+
3
+ This example shows a struct of mixed values.
4
+
5
+ @[ruby](show.rb)
6
+
7
+ The output shows details of the struct.
8
+
9
+ @[yaml](show.yaml)
@@ -0,0 +1,43 @@
1
+ #### Nested Structs
2
+
3
+ This example shows nested structs.
4
+
5
+ ```show.rb```:
6
+ ```ruby
7
+ require 'debug_helper'
8
+
9
+ MyStruct_0 = Struct.new(:a, :b)
10
+ MyStruct_1 = Struct.new(:c, :d)
11
+ struct_1a = MyStruct_1.new(2, 3)
12
+ struct_1b = MyStruct_1.new(4, 5)
13
+ struct_0 = MyStruct_0.new(struct_1a, struct_1b)
14
+ DebugHelper.show(struct_0, 'My nested struct')
15
+ ```
16
+
17
+ The output shows details of the structs.
18
+
19
+ ```show.yaml```:
20
+ ```yaml
21
+ ---
22
+ MyStruct_0 (name='My nested struct' size=2):
23
+ Member 0:
24
+ Name: :a
25
+ Value:
26
+ MyStruct_1 (size=2):
27
+ Member 0:
28
+ Name: :c
29
+ Value: Fixnum 2
30
+ Member 1:
31
+ Name: :d
32
+ Value: Fixnum 3
33
+ Member 1:
34
+ Name: :b
35
+ Value:
36
+ MyStruct_1 (size=2):
37
+ Member 0:
38
+ Name: :c
39
+ Value: Fixnum 4
40
+ Member 1:
41
+ Name: :d
42
+ Value: Fixnum 5
43
+ ```
@@ -0,0 +1,8 @@
1
+ require 'debug_helper'
2
+
3
+ MyStruct_0 = Struct.new(:a, :b)
4
+ MyStruct_1 = Struct.new(:c, :d)
5
+ struct_1a = MyStruct_1.new(2, 3)
6
+ struct_1b = MyStruct_1.new(4, 5)
7
+ struct_0 = MyStruct_0.new(struct_1a, struct_1b)
8
+ DebugHelper.show(struct_0, 'My nested struct')
@@ -0,0 +1,22 @@
1
+ ---
2
+ MyStruct_0 (name='My nested struct' size=2):
3
+ Member 0:
4
+ Name: :a
5
+ Value:
6
+ MyStruct_1 (size=2):
7
+ Member 0:
8
+ Name: :c
9
+ Value: Fixnum 2
10
+ Member 1:
11
+ Name: :d
12
+ Value: Fixnum 3
13
+ Member 1:
14
+ Name: :b
15
+ Value:
16
+ MyStruct_1 (size=2):
17
+ Member 0:
18
+ Name: :c
19
+ Value: Fixnum 4
20
+ Member 1:
21
+ Name: :d
22
+ Value: Fixnum 5