nullz 0.1.0 → 0.8.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/.github/workflows/codeql-analysis.yml +70 -0
- data/.gitignore +2 -1
- data/.travis.yml +19 -0
- data/Gemfile +2 -0
- data/Gemfile.lock +26 -18
- data/README.md +12 -5
- data/lib/null_object.rb +109 -100
- data/lib/nullz/version.rb +3 -0
- data/nullz.gemspec +6 -6
- data/pkg/nullz-0.1.0.gem +0 -0
- metadata +14 -14
- data/lib/.DS_Store +0 -0
- data/lib/null_object/version.rb +0 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7617d1c3aee2984052cbf94128de905fa8b672d2e17961102351963c5ef09667
|
4
|
+
data.tar.gz: 218a3af60e3a2057d5990b515d1fcd04e748ef1e2fddc9da4cee02d15a949240
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e07ca3f2481ad757e1330cb2b16fee9ebfb8b09571a7b31e9bff2aba6ecd54006473debfbd2f7d1e10cb21da831f4a6872c2fa0f33efcac0bada6cf75c58b70d
|
7
|
+
data.tar.gz: 4a40d73fd4d5142044bd3d53d27c60b86b6f2ec61a267947e1abc274d8fddac71bec7410bfa58761782e934eaa8f46b154f57537ad3e4f0aabe9e21173cadde8
|
@@ -0,0 +1,70 @@
|
|
1
|
+
# For most projects, this workflow file will not need changing; you simply need
|
2
|
+
# to commit it to your repository.
|
3
|
+
#
|
4
|
+
# You may wish to alter this file to override the set of languages analyzed,
|
5
|
+
# or to provide custom queries or build logic.
|
6
|
+
#
|
7
|
+
# ******** NOTE ********
|
8
|
+
# We have attempted to detect the languages in your repository. Please check
|
9
|
+
# the `language` matrix defined below to confirm you have the correct set of
|
10
|
+
# supported CodeQL languages.
|
11
|
+
#
|
12
|
+
name: "CodeQL"
|
13
|
+
|
14
|
+
on:
|
15
|
+
push:
|
16
|
+
branches: [ master ]
|
17
|
+
pull_request:
|
18
|
+
# The branches below must be a subset of the branches above
|
19
|
+
branches: [ master ]
|
20
|
+
schedule:
|
21
|
+
- cron: '26 3 * * 3'
|
22
|
+
|
23
|
+
jobs:
|
24
|
+
analyze:
|
25
|
+
name: Analyze
|
26
|
+
runs-on: ubuntu-latest
|
27
|
+
permissions:
|
28
|
+
actions: read
|
29
|
+
contents: read
|
30
|
+
security-events: write
|
31
|
+
|
32
|
+
strategy:
|
33
|
+
fail-fast: false
|
34
|
+
matrix:
|
35
|
+
language: [ 'ruby' ]
|
36
|
+
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
|
37
|
+
# Learn more about CodeQL language support at https://git.io/codeql-language-support
|
38
|
+
|
39
|
+
steps:
|
40
|
+
- name: Checkout repository
|
41
|
+
uses: actions/checkout@v2
|
42
|
+
|
43
|
+
# Initializes the CodeQL tools for scanning.
|
44
|
+
- name: Initialize CodeQL
|
45
|
+
uses: github/codeql-action/init@v1
|
46
|
+
with:
|
47
|
+
languages: ${{ matrix.language }}
|
48
|
+
# If you wish to specify custom queries, you can do so here or in a config file.
|
49
|
+
# By default, queries listed here will override any specified in a config file.
|
50
|
+
# Prefix the list here with "+" to use these queries and those in the config file.
|
51
|
+
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
52
|
+
|
53
|
+
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
54
|
+
# If this step fails, then you should remove it and run the build manually (see below)
|
55
|
+
- name: Autobuild
|
56
|
+
uses: github/codeql-action/autobuild@v1
|
57
|
+
|
58
|
+
# ℹ️ Command-line programs to run using the OS shell.
|
59
|
+
# 📚 https://git.io/JvXDl
|
60
|
+
|
61
|
+
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
|
62
|
+
# and modify them (or add more) to build your code if your project
|
63
|
+
# uses a compiled language
|
64
|
+
|
65
|
+
#- run: |
|
66
|
+
# make bootstrap
|
67
|
+
# make release
|
68
|
+
|
69
|
+
- name: Perform CodeQL Analysis
|
70
|
+
uses: github/codeql-action/analyze@v1
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
@@ -1 +1,20 @@
|
|
1
1
|
language: ruby
|
2
|
+
deploy:
|
3
|
+
provider: rubygems
|
4
|
+
api_key:
|
5
|
+
secure: NljDAIxl+Gku+d894m758sm6PFuaaL7GUmmbR87h5GAhgMJJYXEIeRinlFm5LNow09n9ssBu4iSAf28Xg0lNKLGAyLLpS9y3wVQBOd11j+Dp6/M6VCb+Ramb1aLc47RSh8cynWMJQeVGKNv2apP88hITbC+0qAKklY45176s/2xZKSnKq5RStQ76OE0iNTjxtDgZPSALrNmu/C/a6ajIymtIFo+rhTTLl8ZfX+jjTIButl3o+IulRpsiPwPBH/R6eWSoZ69PXc62ZlHK/X9KLTOkYddra0TjjqC+379kYHZNdAWnPL+VQaTJj73Njg9rkxVx+b3QRTSn7je7qyDxwjambSixs7CoM5Sgh69iaMD6Qii1ef7uKvIYj9T9IPi04UaiB8QVH4aukI/BhHbTlkY5IwGr6Mkzoyg257iUoHVOefGmt3sd6/NerM0XRooauZcuNkYutVbwqOkSFumt11XBM+e0Yipsx89w8/lHVpl4f1/d3sXa5aZaqe2nXDtAtsdKu+YWckHQ1HRF8JWTF6IUrWpMlOg9AM+gZKGPQ+B+EZ2WsL6wbGLbMUMyTGW3gOmvmJJ2ebA1AGteYHRSMEuZF5ifU+Q69MpyVq6VTCs9Tj4q2r+KZJrA3XnIRETzPzpNF+D2BwdvefPREg11IOungXGBcF8l1jSe5ytxec8=
|
6
|
+
gem: nullz
|
7
|
+
on:
|
8
|
+
tags: true
|
9
|
+
repo: rootedbox/nullz
|
10
|
+
env:
|
11
|
+
global:
|
12
|
+
- CC_TEST_REPORTER_ID=1081a64ece400a4541fa32c7dd47616f8bc0a9e99a2b5ed2b1b3e449660b4b0d
|
13
|
+
before_script:
|
14
|
+
- curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
|
15
|
+
- chmod +x ./cc-test-reporter
|
16
|
+
- ./cc-test-reporter before-build
|
17
|
+
script:
|
18
|
+
- bundle exec rspec
|
19
|
+
after_script:
|
20
|
+
- ./cc-test-reporter after-build --exit-code $TRAVIS_TEST_RESULT
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,35 +1,43 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
nullz (0.1
|
4
|
+
nullz (0.8.1)
|
5
5
|
|
6
6
|
GEM
|
7
7
|
remote: https://rubygems.org/
|
8
8
|
specs:
|
9
|
-
diff-lcs (1.
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
rspec-
|
14
|
-
rspec-
|
15
|
-
|
16
|
-
|
17
|
-
|
9
|
+
diff-lcs (1.5.0)
|
10
|
+
docile (1.4.0)
|
11
|
+
rake (13.0.6)
|
12
|
+
rspec (3.10.0)
|
13
|
+
rspec-core (~> 3.10.0)
|
14
|
+
rspec-expectations (~> 3.10.0)
|
15
|
+
rspec-mocks (~> 3.10.0)
|
16
|
+
rspec-core (3.10.1)
|
17
|
+
rspec-support (~> 3.10.0)
|
18
|
+
rspec-expectations (3.10.2)
|
18
19
|
diff-lcs (>= 1.2.0, < 2.0)
|
19
|
-
rspec-support (~> 3.
|
20
|
-
rspec-mocks (3.
|
20
|
+
rspec-support (~> 3.10.0)
|
21
|
+
rspec-mocks (3.10.2)
|
21
22
|
diff-lcs (>= 1.2.0, < 2.0)
|
22
|
-
rspec-support (~> 3.
|
23
|
-
rspec-support (3.
|
23
|
+
rspec-support (~> 3.10.0)
|
24
|
+
rspec-support (3.10.3)
|
25
|
+
simplecov (0.21.2)
|
26
|
+
docile (~> 1.1)
|
27
|
+
simplecov-html (~> 0.11)
|
28
|
+
simplecov_json_formatter (~> 0.1)
|
29
|
+
simplecov-html (0.12.3)
|
30
|
+
simplecov_json_formatter (0.1.3)
|
24
31
|
|
25
32
|
PLATFORMS
|
26
|
-
|
33
|
+
-darwin-20
|
27
34
|
|
28
35
|
DEPENDENCIES
|
29
|
-
bundler (~>
|
36
|
+
bundler (~> 2.0)
|
30
37
|
nullz!
|
31
|
-
rake (
|
38
|
+
rake (>= 12.3.3)
|
32
39
|
rspec (~> 3.0)
|
40
|
+
simplecov
|
33
41
|
|
34
42
|
BUNDLED WITH
|
35
|
-
|
43
|
+
2.2.24
|
data/README.md
CHANGED
@@ -1,8 +1,15 @@
|
|
1
|
-
# Nullz a
|
1
|
+
# Nullz a Null Object pattern gem.
|
2
|
+
Nullz is a null object pattern gem to safely wrap nils in a do nothing null objects.
|
3
|
+
|
4
|
+
[](https://travis-ci.org/rootedbox/nullz)
|
5
|
+
[](https://codeclimate.com/github/rootedbox/nullz)
|
6
|
+
[](https://badge.fury.io/rb/nullz)
|
7
|
+
|
8
|
+
## Usage
|
2
9
|
|
3
|
-
Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/untitled`. To experiment with that code, run `bin/console` for an interactive prompt.
|
4
10
|
|
5
|
-
|
11
|
+
|
12
|
+
|
6
13
|
|
7
14
|
## Installation
|
8
15
|
|
@@ -22,7 +29,7 @@ Or install it yourself as:
|
|
22
29
|
|
23
30
|
## Usage
|
24
31
|
|
25
|
-
|
32
|
+
|
26
33
|
|
27
34
|
## Development
|
28
35
|
|
@@ -40,4 +47,4 @@ The gem is available as open source under the terms of the [MIT License](https:/
|
|
40
47
|
|
41
48
|
## Code of Conduct
|
42
49
|
|
43
|
-
Everyone interacting in the
|
50
|
+
Everyone interacting in the Nullz project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/untitled/blob/master/CODE_OF_CONDUCT.md).
|
data/lib/null_object.rb
CHANGED
@@ -1,108 +1,117 @@
|
|
1
|
-
require '
|
1
|
+
require 'nullz/version'
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
NullObject.new unless method == :to_ary
|
7
|
-
end
|
8
|
-
|
9
|
-
def to_s
|
10
|
-
to_str
|
11
|
-
end
|
12
|
-
|
13
|
-
def to_str
|
14
|
-
''
|
15
|
-
end
|
16
|
-
|
17
|
-
def return_null_object(_value)
|
18
|
-
NullObject.new
|
19
|
-
end
|
20
|
-
|
21
|
-
def coerce(value)
|
22
|
-
[NullObject.new, value]
|
23
|
-
end
|
24
|
-
|
25
|
-
def +(_value)
|
26
|
-
NullObject.new
|
27
|
-
end
|
28
|
-
|
29
|
-
def -(_value)
|
30
|
-
NullObject.new
|
31
|
-
end
|
32
|
-
|
33
|
-
def *(_value)
|
34
|
-
NullObject.new
|
35
|
-
end
|
36
|
-
|
37
|
-
def /(_value)
|
38
|
-
NullObject.new
|
39
|
-
end
|
40
|
-
|
41
|
-
def [](_value)
|
42
|
-
NullObject.new
|
43
|
-
end
|
44
|
-
|
45
|
-
def <<(_value)
|
46
|
-
NullObject.new
|
47
|
-
end
|
48
|
-
|
49
|
-
def >>(_value)
|
50
|
-
NullObject.new
|
51
|
-
end
|
52
|
-
|
53
|
-
def ==(value)
|
54
|
-
value.nil?
|
55
|
-
end
|
56
|
-
|
57
|
-
def !=(value)
|
58
|
-
!value.nil?
|
59
|
-
end
|
60
|
-
|
61
|
-
def >(_value)
|
62
|
-
false
|
63
|
-
end
|
64
|
-
|
65
|
-
def <(_value)
|
66
|
-
false
|
67
|
-
end
|
68
|
-
|
69
|
-
def |(_value)
|
70
|
-
NullObject.new
|
71
|
-
end
|
72
|
-
|
73
|
-
def ^(_value)
|
74
|
-
NullObject.new
|
75
|
-
end
|
76
|
-
|
77
|
-
def ~(_value)
|
78
|
-
NullObject.new
|
79
|
-
end
|
80
|
-
|
81
|
-
def &(_value)
|
82
|
-
NullObject.new
|
83
|
-
end
|
84
|
-
|
85
|
-
def to_int
|
86
|
-
0
|
87
|
-
end
|
3
|
+
def _(obj)
|
4
|
+
obj || Nullz::NullObject.new
|
5
|
+
end
|
88
6
|
|
89
|
-
|
90
|
-
|
91
|
-
end
|
7
|
+
def __(obj, on_null_object_created_proc = Proc.new { })
|
8
|
+
return obj if obj
|
92
9
|
|
93
|
-
|
94
|
-
false
|
95
|
-
end
|
10
|
+
(Nullz.on_null_object_created || on_null_object_created_proc).call
|
96
11
|
|
97
|
-
|
98
|
-
|
99
|
-
end
|
12
|
+
Nullz::NullObject.new
|
13
|
+
end
|
100
14
|
|
101
|
-
|
102
|
-
|
103
|
-
|
15
|
+
def safe(obj, on_null_object_created_proc = Proc.new { })
|
16
|
+
Nullz.use_null_object ? __(obj, on_null_object_created_proc) : obj
|
17
|
+
end
|
104
18
|
|
105
|
-
|
106
|
-
|
19
|
+
module Nullz
|
20
|
+
attr_accessor :on_null_object_created, :use_null_object
|
21
|
+
|
22
|
+
module_function :on_null_object_created
|
23
|
+
module_function :use_null_object
|
24
|
+
module_function :on_null_object_created=
|
25
|
+
module_function :use_null_object=
|
26
|
+
|
27
|
+
class NullObject
|
28
|
+
def inspect
|
29
|
+
nil.inspect
|
30
|
+
end
|
31
|
+
|
32
|
+
def rationalize
|
33
|
+
nil.rationalize
|
34
|
+
end
|
35
|
+
|
36
|
+
def coerce(value)
|
37
|
+
[NullObject.new, value]
|
38
|
+
end
|
39
|
+
|
40
|
+
def return_null_object(_value)
|
41
|
+
NullObject.new
|
42
|
+
end
|
43
|
+
|
44
|
+
alias_method :+, :return_null_object
|
45
|
+
alias_method :-, :return_null_object
|
46
|
+
alias_method :*, :return_null_object
|
47
|
+
alias_method :/, :return_null_object
|
48
|
+
alias_method :|, :return_null_object
|
49
|
+
alias_method :^, :return_null_object
|
50
|
+
alias_method :~, :return_null_object
|
51
|
+
alias_method :&, :return_null_object
|
52
|
+
alias_method :[], :return_null_object
|
53
|
+
alias_method :<<, :return_null_object
|
54
|
+
alias_method :>>, :return_null_object
|
55
|
+
|
56
|
+
def ==(value)
|
57
|
+
value.nil?
|
58
|
+
end
|
59
|
+
|
60
|
+
def !=(value)
|
61
|
+
!value.nil?
|
62
|
+
end
|
63
|
+
|
64
|
+
def to_r
|
65
|
+
nil.to_r
|
66
|
+
end
|
67
|
+
|
68
|
+
def to_f
|
69
|
+
nil.to_f
|
70
|
+
end
|
71
|
+
|
72
|
+
def to_i
|
73
|
+
nil.to_i
|
74
|
+
end
|
75
|
+
|
76
|
+
def to_s
|
77
|
+
nil.to_s
|
78
|
+
end
|
79
|
+
|
80
|
+
def to_c
|
81
|
+
nil.to_c
|
82
|
+
end
|
83
|
+
|
84
|
+
def to_b
|
85
|
+
false
|
86
|
+
end
|
87
|
+
|
88
|
+
alias_method :to_str, :to_s
|
89
|
+
alias_method :to_bool, :to_b
|
90
|
+
|
91
|
+
def >(_value)
|
92
|
+
return false
|
93
|
+
end
|
94
|
+
|
95
|
+
def <(_value)
|
96
|
+
return false
|
97
|
+
end
|
98
|
+
|
99
|
+
def empty?
|
100
|
+
true
|
101
|
+
end
|
102
|
+
|
103
|
+
def nil?
|
104
|
+
true
|
105
|
+
end
|
106
|
+
|
107
|
+
def null?
|
108
|
+
true
|
109
|
+
end
|
110
|
+
|
111
|
+
def method_missing(method, *_args, &_block)
|
112
|
+
return false if method.to_s.index('?')
|
113
|
+
NullObject.new unless method == :to_ary
|
114
|
+
end
|
107
115
|
end
|
108
116
|
end
|
117
|
+
|
data/nullz.gemspec
CHANGED
@@ -1,16 +1,16 @@
|
|
1
1
|
|
2
2
|
lib = File.expand_path('../lib', __FILE__)
|
3
3
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
-
require '
|
4
|
+
require 'nullz/version'
|
5
5
|
|
6
6
|
Gem::Specification.new do |spec|
|
7
7
|
spec.name = 'nullz'
|
8
|
-
spec.version =
|
8
|
+
spec.version = Nullz::VERSION
|
9
9
|
spec.authors = ['Jason Jacobs']
|
10
10
|
spec.email = ['nerfnerd@gmail.com']
|
11
11
|
|
12
|
-
spec.summary = '
|
13
|
-
spec.description = '
|
12
|
+
spec.summary = 'Null Object'
|
13
|
+
spec.description = 'Null Object Implementation'
|
14
14
|
spec.homepage = 'https://github.com/rootedbox/nullz'
|
15
15
|
spec.license = 'MIT'
|
16
16
|
|
@@ -32,7 +32,7 @@ Gem::Specification.new do |spec|
|
|
32
32
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
33
33
|
spec.require_paths = ['lib']
|
34
34
|
|
35
|
-
spec.add_development_dependency 'bundler', '~>
|
36
|
-
spec.add_development_dependency
|
35
|
+
spec.add_development_dependency 'bundler', '~> 2.0'
|
36
|
+
spec.add_development_dependency "rake", ">= 12.3.3"
|
37
37
|
spec.add_development_dependency 'rspec', '~> 3.0'
|
38
38
|
end
|
data/pkg/nullz-0.1.0.gem
ADDED
Binary file
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nullz
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1
|
4
|
+
version: 0.8.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jason Jacobs
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-01-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -16,28 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '2.0'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '2.0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: 12.3.3
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
40
|
+
version: 12.3.3
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rspec
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -52,13 +52,14 @@ dependencies:
|
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '3.0'
|
55
|
-
description:
|
55
|
+
description: Null Object Implementation
|
56
56
|
email:
|
57
57
|
- nerfnerd@gmail.com
|
58
58
|
executables: []
|
59
59
|
extensions: []
|
60
60
|
extra_rdoc_files: []
|
61
61
|
files:
|
62
|
+
- ".github/workflows/codeql-analysis.yml"
|
62
63
|
- ".gitignore"
|
63
64
|
- ".travis.yml"
|
64
65
|
- CODE_OF_CONDUCT.md
|
@@ -69,10 +70,10 @@ files:
|
|
69
70
|
- Rakefile
|
70
71
|
- bin/console
|
71
72
|
- bin/setup
|
72
|
-
- lib/.DS_Store
|
73
73
|
- lib/null_object.rb
|
74
|
-
- lib/
|
74
|
+
- lib/nullz/version.rb
|
75
75
|
- nullz.gemspec
|
76
|
+
- pkg/nullz-0.1.0.gem
|
76
77
|
homepage: https://github.com/rootedbox/nullz
|
77
78
|
licenses:
|
78
79
|
- MIT
|
@@ -93,9 +94,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
93
94
|
- !ruby/object:Gem::Version
|
94
95
|
version: '0'
|
95
96
|
requirements: []
|
96
|
-
|
97
|
-
rubygems_version: 2.7.6
|
97
|
+
rubygems_version: 3.1.2
|
98
98
|
signing_key:
|
99
99
|
specification_version: 4
|
100
|
-
summary:
|
100
|
+
summary: Null Object
|
101
101
|
test_files: []
|
data/lib/.DS_Store
DELETED
Binary file
|
data/lib/null_object/version.rb
DELETED