object_inspector 0.6.0 → 0.6.1
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.
- checksums.yaml +4 -4
- data/.rubocop.yml +6 -3
- data/CHANGELOG.md +7 -11
- data/Gemfile.lock +13 -16
- data/README.md +22 -0
- data/lib/object_inspector/scope.rb +11 -8
- data/lib/object_inspector/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4b35f6663bb2960940d4c0139ff728c37082c86ffef6a2bfedeb179fcbb54339
|
|
4
|
+
data.tar.gz: 53e84daa5e170088aeeaac38845eab86f717dacbebf0d9e795e557cd2e5f0f75
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: fe9fb99c6ed1b74f269070f697119596f0ec9cfe074453fbc77166349b813163158dbe6ccf58646b340f7a0fca8fdab391da1db17e75986e904eebfca96598d5
|
|
7
|
+
data.tar.gz: 65ed4a72973c2cd5b38b56af6cd131d35a6c2c3affc292be8e13e11eae6c222ad10585b4eee3a475d1888fcd4e98cc17c1c1d940ae535f25472b65e815f83759
|
data/.rubocop.yml
CHANGED
|
@@ -36,15 +36,18 @@ Layout/EmptyLineAfterGuardClause:
|
|
|
36
36
|
Layout/EndOfLine:
|
|
37
37
|
EnforcedStyle: lf
|
|
38
38
|
|
|
39
|
-
Layout/
|
|
39
|
+
Layout/IndentFirstArgument:
|
|
40
40
|
EnforcedStyle: consistent_relative_to_receiver
|
|
41
41
|
|
|
42
|
-
Layout/
|
|
42
|
+
Layout/IndentFirstArrayElement:
|
|
43
43
|
EnforcedStyle: consistent
|
|
44
44
|
|
|
45
|
-
Layout/
|
|
45
|
+
Layout/IndentFirstHashElement:
|
|
46
46
|
EnforcedStyle: consistent
|
|
47
47
|
|
|
48
|
+
Layout/IndentFirstParameter:
|
|
49
|
+
Enabled: false # Revisit if more settings become available.
|
|
50
|
+
|
|
48
51
|
Layout/MultilineAssignmentLayout:
|
|
49
52
|
Enabled: true
|
|
50
53
|
|
data/CHANGELOG.md
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
### 0.6.
|
|
2
|
-
-
|
|
1
|
+
### 0.6.1 - 2019-06-27
|
|
2
|
+
- Flatten and compact arrays of `nil`s as well as nested arrays of `nil`s in join_* methods.
|
|
3
3
|
|
|
4
|
+
### 0.6.0 - 2019-03-13
|
|
5
|
+
- Fix inspection of delegating wrapper objects.
|
|
6
|
+
- Allow clearing output of inspect methods.
|
|
4
7
|
|
|
5
8
|
### 0.5.2 - 2019-02-24
|
|
6
|
-
- Automatically compact nils in join_* methods
|
|
9
|
+
- Automatically compact nils in join_* methods.
|
|
7
10
|
|
|
8
11
|
### 0.5.1 - 2018-06-12
|
|
9
12
|
- Don't include empty strings from Scope#join_* methods when applicable.
|
|
@@ -13,29 +16,23 @@
|
|
|
13
16
|
- Add ObjectInspector::Scope#join_name.
|
|
14
17
|
- Add configurable ObjectInspector.configuration.presented_object_separator.
|
|
15
18
|
|
|
16
|
-
|
|
17
19
|
### 0.4.0 - 2018-05-25
|
|
18
20
|
- Feature: Add ObjectInspector::Configuration#default_scope setting -- can be used to override the default Scope for object inspection.
|
|
19
21
|
- Implement ObjectInspector::Scope#== for comparing scopes with scopes and/or scopes with (Arrays of) Strings, Symbols, etc.
|
|
20
22
|
|
|
21
|
-
|
|
22
23
|
### 0.3.1 - 2018-04-15
|
|
23
24
|
- Add ObjectInspector::Configuration#formatter_class setting for overriding the default Formatter.
|
|
24
25
|
|
|
25
|
-
|
|
26
26
|
### 0.3.0 - 2018-04-14
|
|
27
|
-
|
|
28
27
|
- Remove optional dependency on ActiveSupport::StringInquirer. [Scopes are now objects](https://github.com/pdobb/object_inspector/blob/master/lib/object_inspector/scope.rb) that act like ActiveSupport::StringInquirer objects.
|
|
29
28
|
- Add ObjectInspector::Scope.join_flags helper method.
|
|
30
29
|
- Add ObjectInspector::Scope.join_info helper method.
|
|
31
30
|
- Scope: Show an out-of-scope-placeholder symbol (*) when predicate is not matched and a block is given.
|
|
32
31
|
- Scope: Add wild-card "all" scope that is always evaluated as true / a match.
|
|
33
|
-
- Add ability to specify multiple scopes. e.g. my_object.inspect(scope: %i[verbose complex])
|
|
32
|
+
- Add ability to specify multiple scopes. e.g. my_object.inspect(scope: %i[verbose complex]).
|
|
34
33
|
- Add gem defaults configuration.
|
|
35
34
|
|
|
36
|
-
|
|
37
35
|
### 0.2.0 - 2018-04-12
|
|
38
|
-
|
|
39
36
|
- Automatically inspect wrapped Objects, if applicable.
|
|
40
37
|
- Use `display_name` if defined on object, in place of `inspect_name`.
|
|
41
38
|
- Add on-the-fly inspect methods when Symbols are passed in to #inspect.
|
|
@@ -45,5 +42,4 @@
|
|
|
45
42
|
|
|
46
43
|
|
|
47
44
|
### 0.1.0 - 2018-04-09
|
|
48
|
-
|
|
49
45
|
- Initial release!
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
object_inspector (0.6.
|
|
4
|
+
object_inspector (0.6.1)
|
|
5
5
|
|
|
6
6
|
GEM
|
|
7
7
|
remote: https://rubygems.org/
|
|
@@ -14,7 +14,7 @@ GEM
|
|
|
14
14
|
thread_safe (~> 0.3, >= 0.3.1)
|
|
15
15
|
benchmark-ips (2.7.2)
|
|
16
16
|
builder (3.2.3)
|
|
17
|
-
byebug (11.0.
|
|
17
|
+
byebug (11.0.1)
|
|
18
18
|
codeclimate-engine-rb (0.4.1)
|
|
19
19
|
virtus (~> 1.0)
|
|
20
20
|
coderay (1.1.2)
|
|
@@ -22,10 +22,10 @@ GEM
|
|
|
22
22
|
descendants_tracker (~> 0.0.1)
|
|
23
23
|
descendants_tracker (0.0.4)
|
|
24
24
|
thread_safe (~> 0.3, >= 0.3.1)
|
|
25
|
-
docile (1.3.
|
|
25
|
+
docile (1.3.2)
|
|
26
26
|
equalizer (0.0.11)
|
|
27
27
|
ice_nine (0.11.2)
|
|
28
|
-
jaro_winkler (1.5.
|
|
28
|
+
jaro_winkler (1.5.3)
|
|
29
29
|
json (2.2.0)
|
|
30
30
|
kwalify (0.7.2)
|
|
31
31
|
method_source (0.9.2)
|
|
@@ -35,11 +35,10 @@ GEM
|
|
|
35
35
|
builder
|
|
36
36
|
minitest (>= 5.0)
|
|
37
37
|
ruby-progressbar
|
|
38
|
-
object_identifier (0.
|
|
39
|
-
parallel (1.
|
|
40
|
-
parser (2.6.
|
|
38
|
+
object_identifier (0.3.0)
|
|
39
|
+
parallel (1.17.0)
|
|
40
|
+
parser (2.6.3.0)
|
|
41
41
|
ast (~> 2.4.0)
|
|
42
|
-
powerpack (0.1.2)
|
|
43
42
|
pry (0.12.2)
|
|
44
43
|
coderay (~> 1.1.0)
|
|
45
44
|
method_source (~> 0.9.0)
|
|
@@ -49,29 +48,27 @@ GEM
|
|
|
49
48
|
psych (3.1.0)
|
|
50
49
|
rainbow (3.0.0)
|
|
51
50
|
rake (12.3.2)
|
|
52
|
-
reek (5.
|
|
51
|
+
reek (5.4.0)
|
|
53
52
|
codeclimate-engine-rb (~> 0.4.0)
|
|
54
53
|
kwalify (~> 0.7.0)
|
|
55
54
|
parser (>= 2.5.0.0, < 2.7, != 2.5.1.1)
|
|
56
55
|
psych (~> 3.1.0)
|
|
57
56
|
rainbow (>= 2.0, < 4.0)
|
|
58
|
-
rubocop (0.
|
|
57
|
+
rubocop (0.72.0)
|
|
59
58
|
jaro_winkler (~> 1.5.1)
|
|
60
59
|
parallel (~> 1.10)
|
|
61
|
-
parser (>= 2.
|
|
62
|
-
powerpack (~> 0.1)
|
|
63
|
-
psych (>= 3.1.0)
|
|
60
|
+
parser (>= 2.6)
|
|
64
61
|
rainbow (>= 2.2.2, < 4.0)
|
|
65
62
|
ruby-progressbar (~> 1.7)
|
|
66
|
-
unicode-display_width (
|
|
67
|
-
ruby-progressbar (1.10.
|
|
63
|
+
unicode-display_width (>= 1.4.0, < 1.7)
|
|
64
|
+
ruby-progressbar (1.10.1)
|
|
68
65
|
simplecov (0.16.1)
|
|
69
66
|
docile (~> 1.1)
|
|
70
67
|
json (>= 1.8, < 3)
|
|
71
68
|
simplecov-html (~> 0.10.0)
|
|
72
69
|
simplecov-html (0.10.2)
|
|
73
70
|
thread_safe (0.3.6)
|
|
74
|
-
unicode-display_width (1.
|
|
71
|
+
unicode-display_width (1.6.0)
|
|
75
72
|
virtus (1.0.5)
|
|
76
73
|
axiom-types (~> 0.1)
|
|
77
74
|
coercible (~> 1.0)
|
data/README.md
CHANGED
|
@@ -455,6 +455,28 @@ MyObject.new.inspect(info: :my_method2) # => "<MyObject Result2>"
|
|
|
455
455
|
MyObject.new.inspect # => "<MyObject my_method2>"
|
|
456
456
|
```
|
|
457
457
|
|
|
458
|
+
## Clearing Output for Specified Inspect Method
|
|
459
|
+
|
|
460
|
+
Pass `nil` to any inspect method type to not display it:
|
|
461
|
+
|
|
462
|
+
```ruby
|
|
463
|
+
class MyObject
|
|
464
|
+
include ObjectInspector::InspectorsHelper
|
|
465
|
+
|
|
466
|
+
def inspect_identification; "My Object" end
|
|
467
|
+
def inspect_info; "INFO" end
|
|
468
|
+
def inspect_flags; "FLAG1" end
|
|
469
|
+
def inspect_issues; "ISSUE1" end
|
|
470
|
+
end
|
|
471
|
+
|
|
472
|
+
MyObject.new.inspect
|
|
473
|
+
# => "<My Object(FLAG1) !!ISSUE1!! INFO>"
|
|
474
|
+
MyObject.new.inspect(info: nil, flags: nil, issues: nil)
|
|
475
|
+
# => "<My Object>"
|
|
476
|
+
MyObject.new.inspect(identification: nil, info: nil, flags: nil, issues: nil)
|
|
477
|
+
# => "<MyObject>"
|
|
478
|
+
```
|
|
479
|
+
|
|
458
480
|
|
|
459
481
|
## Custom Formatters
|
|
460
482
|
|
|
@@ -27,8 +27,7 @@ module ObjectInspector
|
|
|
27
27
|
# @param separator [#to_s] (ObjectInspector.configuration.flags_separator)
|
|
28
28
|
def join_name(parts,
|
|
29
29
|
separator: ObjectInspector.configuration.name_separator)
|
|
30
|
-
|
|
31
|
-
the_parts.join(separator) if the_parts.any?
|
|
30
|
+
_join(parts, separator)
|
|
32
31
|
end
|
|
33
32
|
|
|
34
33
|
# Join the passed-in flags with the passed in separator.
|
|
@@ -37,8 +36,7 @@ module ObjectInspector
|
|
|
37
36
|
# @param separator [#to_s] (ObjectInspector.configuration.flags_separator)
|
|
38
37
|
def join_flags(flags,
|
|
39
38
|
separator: ObjectInspector.configuration.flags_separator)
|
|
40
|
-
|
|
41
|
-
the_flags.join(separator) if the_flags.any?
|
|
39
|
+
_join(flags, separator)
|
|
42
40
|
end
|
|
43
41
|
|
|
44
42
|
# Join the passed-in issues with the passed in separator.
|
|
@@ -47,8 +45,7 @@ module ObjectInspector
|
|
|
47
45
|
# @param separator [#to_s] (ObjectInspector.configuration.issues_separator)
|
|
48
46
|
def join_issues(issues,
|
|
49
47
|
separator: ObjectInspector.configuration.issues_separator)
|
|
50
|
-
|
|
51
|
-
the_issues.join(separator) if the_issues.any?
|
|
48
|
+
_join(issues, separator)
|
|
52
49
|
end
|
|
53
50
|
|
|
54
51
|
# Join the passed-in items with the passed in separator.
|
|
@@ -57,8 +54,7 @@ module ObjectInspector
|
|
|
57
54
|
# @param separator [#to_s] (ObjectInspector.configuration.info_separator)
|
|
58
55
|
def join_info(items,
|
|
59
56
|
separator: ObjectInspector.configuration.info_separator)
|
|
60
|
-
|
|
61
|
-
the_items.join(separator) if the_items.any?
|
|
57
|
+
_join(items, separator)
|
|
62
58
|
end
|
|
63
59
|
|
|
64
60
|
# Compare self with the passed in object.
|
|
@@ -108,6 +104,13 @@ module ObjectInspector
|
|
|
108
104
|
end
|
|
109
105
|
end
|
|
110
106
|
|
|
107
|
+
def _join(items, separator)
|
|
108
|
+
items = Array(items)
|
|
109
|
+
items.flatten!
|
|
110
|
+
items.compact!
|
|
111
|
+
items.join(separator) unless items.empty?
|
|
112
|
+
end
|
|
113
|
+
|
|
111
114
|
def match?(scope_name)
|
|
112
115
|
any_names_match?(scope_name) ||
|
|
113
116
|
wild_card_scope?
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: object_inspector
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.6.
|
|
4
|
+
version: 0.6.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Paul Dobbins
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2019-
|
|
11
|
+
date: 2019-06-27 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: benchmark-ips
|
|
@@ -232,7 +232,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
232
232
|
- !ruby/object:Gem::Version
|
|
233
233
|
version: '0'
|
|
234
234
|
requirements: []
|
|
235
|
-
rubygems_version: 3.0.
|
|
235
|
+
rubygems_version: 3.0.4
|
|
236
236
|
signing_key:
|
|
237
237
|
specification_version: 4
|
|
238
238
|
summary: ObjectInspector builds uniformly formatted inspect output with customizable
|