attr_bool 0.2.1 → 0.2.2
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/LICENSE.txt +1 -1
- data/Rakefile +32 -38
- data/attr_bool.gemspec +14 -25
- data/lib/attr_bool.rb +50 -55
- data/lib/attr_bool/core_ext.rb +4 -9
- data/lib/attr_bool/version.rb +4 -9
- metadata +13 -13
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b0746e6bd74e2e6b5b07d6c910a13e18a97de02188f16b237ec810921e93aa97
|
|
4
|
+
data.tar.gz: 6c071fb31a8ea5a63e8b875e7907259ae9b9694cc31d11ae9f6c503544e111f2
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: a93798cf5ac76b8a181f9dff137255a93b59be01a92f02fb57723ba0ca9ffe1a3a6d470e03caaea067a20498c4338b2c1415c2fa015a25da9e04442763a74dee
|
|
7
|
+
data.tar.gz: ce15f10ea56ea61fe14aaca334d521f84869386769f0ec97e50ec720c7ccf94f35f32d66860c1126c97c8319a7c03a2eb6e4fdd35ee9211e6dde7916a8f7b6e2
|
data/LICENSE.txt
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
MIT License
|
|
2
2
|
|
|
3
|
-
Copyright (c) 2020 Jonathan Bradley Whited
|
|
3
|
+
Copyright (c) 2020-2021 Jonathan Bradley Whited
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
data/Rakefile
CHANGED
|
@@ -1,17 +1,6 @@
|
|
|
1
1
|
# encoding: UTF-8
|
|
2
2
|
# frozen_string_literal: true
|
|
3
3
|
|
|
4
|
-
#--
|
|
5
|
-
# This file is part of AttrBool.
|
|
6
|
-
# Copyright (c) 2020 Jonathan Bradley Whited (@esotericpig)
|
|
7
|
-
#
|
|
8
|
-
# AttrBool is free software: you can redistribute it and/or modify it under
|
|
9
|
-
# the terms of the MIT License.
|
|
10
|
-
#
|
|
11
|
-
# You should have received a copy of the MIT License along with AttrBool.
|
|
12
|
-
# If not, see <https://choosealicense.com/licenses/mit/>.
|
|
13
|
-
#++
|
|
14
|
-
|
|
15
4
|
|
|
16
5
|
require 'bundler/gem_tasks'
|
|
17
6
|
|
|
@@ -28,20 +17,21 @@ CLOBBER.include('doc/')
|
|
|
28
17
|
task default: [:test]
|
|
29
18
|
|
|
30
19
|
desc 'Generate doc'
|
|
31
|
-
task :doc => [
|
|
20
|
+
task :doc,%i[] => %i[yard] do |task|
|
|
21
|
+
# pass
|
|
32
22
|
end
|
|
33
23
|
|
|
34
24
|
desc 'Generate doc for tests too'
|
|
35
25
|
task :doc_test do |task|
|
|
36
26
|
ENV['doctest'] = 'y'
|
|
37
|
-
|
|
27
|
+
|
|
38
28
|
doc_task = Rake::Task[:doc]
|
|
39
|
-
|
|
40
|
-
doc_task.reenable
|
|
41
|
-
doc_task.invoke
|
|
29
|
+
|
|
30
|
+
doc_task.reenable
|
|
31
|
+
doc_task.invoke
|
|
42
32
|
end
|
|
43
33
|
|
|
44
|
-
Rake::TestTask.new
|
|
34
|
+
Rake::TestTask.new do |task|
|
|
45
35
|
task.deps << :doc_test
|
|
46
36
|
task.libs = ['lib','test']
|
|
47
37
|
task.pattern = File.join('test','**','*_test.rb')
|
|
@@ -50,77 +40,79 @@ Rake::TestTask.new() do |task|
|
|
|
50
40
|
task.warning = true
|
|
51
41
|
end
|
|
52
42
|
|
|
53
|
-
YARD::Rake::YardocTask.new
|
|
43
|
+
YARD::Rake::YardocTask.new do |task|
|
|
54
44
|
task.files = [File.join('lib','**','*.{rb}')]
|
|
55
|
-
|
|
45
|
+
|
|
56
46
|
#task.options += ['--template-path',File.join('yard','templates')]
|
|
57
47
|
task.options += ['--title',"AttrBool v#{AttrBool::VERSION} doc"]
|
|
58
|
-
|
|
59
|
-
task.before =
|
|
60
|
-
task.files << File.join('test','**','*.{rb}') if ENV['doctest'].to_s
|
|
48
|
+
|
|
49
|
+
task.before = proc do
|
|
50
|
+
task.files << File.join('test','**','*.{rb}') if ENV['doctest'].to_s.casecmp?('y')
|
|
61
51
|
end
|
|
62
52
|
end
|
|
63
53
|
|
|
64
54
|
desc 'Benchmark define_method vs module_eval and ?: vs bangbang'
|
|
65
55
|
task :benchmark do |task|
|
|
56
|
+
# rubocop:disable all
|
|
57
|
+
|
|
66
58
|
N0 = 100_000
|
|
67
59
|
N1 = 20_000_000
|
|
68
|
-
|
|
60
|
+
|
|
69
61
|
module ModuleExt
|
|
70
62
|
def do_class_eval(name)
|
|
71
63
|
0.upto(N0) do |i|
|
|
72
64
|
n = "#{name}#{i}"
|
|
73
|
-
|
|
65
|
+
|
|
74
66
|
class_eval("def #{n}?(); @#{n}; end")
|
|
75
67
|
end
|
|
76
68
|
end
|
|
77
|
-
|
|
69
|
+
|
|
78
70
|
def do_define_method(name)
|
|
79
71
|
0.upto(N0) do |i|
|
|
80
72
|
n = "#{name}#{i}"
|
|
81
|
-
|
|
73
|
+
|
|
82
74
|
define_method(:"#{n}?") do
|
|
83
75
|
instance_variable_get(:"@#{n}")
|
|
84
76
|
end
|
|
85
77
|
end
|
|
86
78
|
end
|
|
87
|
-
|
|
79
|
+
|
|
88
80
|
def do_module_eval(name)
|
|
89
81
|
0.upto(N0) do |i|
|
|
90
82
|
n = "#{name}#{i}"
|
|
91
|
-
|
|
83
|
+
|
|
92
84
|
module_eval("def #{n}?(); @#{n}; end")
|
|
93
85
|
end
|
|
94
86
|
end
|
|
95
87
|
end
|
|
96
|
-
|
|
88
|
+
|
|
97
89
|
Module.prepend ModuleExt
|
|
98
|
-
|
|
90
|
+
|
|
99
91
|
puts
|
|
100
|
-
Benchmark.bmbm
|
|
92
|
+
Benchmark.bmbm do |bm|
|
|
101
93
|
bm.report('class_eval ') do
|
|
102
94
|
class ClassEvalTest
|
|
103
95
|
do_class_eval :ce
|
|
104
96
|
end
|
|
105
97
|
end
|
|
106
|
-
|
|
98
|
+
|
|
107
99
|
bm.report('define_method') do
|
|
108
100
|
class DefineMethodTest
|
|
109
101
|
do_define_method :dm
|
|
110
102
|
end
|
|
111
103
|
end
|
|
112
|
-
|
|
104
|
+
|
|
113
105
|
bm.report('module_eval ') do
|
|
114
106
|
class ModuleEvalTest
|
|
115
107
|
do_module_eval :me
|
|
116
108
|
end
|
|
117
109
|
end
|
|
118
110
|
end
|
|
119
|
-
|
|
111
|
+
|
|
120
112
|
str = 'str' # Warning workaround
|
|
121
|
-
|
|
113
|
+
|
|
122
114
|
puts
|
|
123
|
-
Benchmark.bmbm
|
|
115
|
+
Benchmark.bmbm do |bm|
|
|
124
116
|
bm.report('?:') do
|
|
125
117
|
0.upto(N1) do |i|
|
|
126
118
|
x = str ? true : false
|
|
@@ -130,7 +122,7 @@ task :benchmark do |task|
|
|
|
130
122
|
x = x ? true : false
|
|
131
123
|
end
|
|
132
124
|
end
|
|
133
|
-
|
|
125
|
+
|
|
134
126
|
bm.report('!!') do
|
|
135
127
|
0.upto(N1) do |i|
|
|
136
128
|
y = !!str
|
|
@@ -141,6 +133,8 @@ task :benchmark do |task|
|
|
|
141
133
|
end
|
|
142
134
|
end
|
|
143
135
|
end
|
|
144
|
-
|
|
136
|
+
|
|
145
137
|
puts
|
|
138
|
+
|
|
139
|
+
# rubocop:enable all
|
|
146
140
|
end
|
data/attr_bool.gemspec
CHANGED
|
@@ -1,62 +1,51 @@
|
|
|
1
1
|
# encoding: UTF-8
|
|
2
2
|
# frozen_string_literal: true
|
|
3
3
|
|
|
4
|
-
#--
|
|
5
|
-
# This file is part of AttrBool.
|
|
6
|
-
# Copyright (c) 2020 Jonathan Bradley Whited (@esotericpig)
|
|
7
|
-
#
|
|
8
|
-
# AttrBool is free software: you can redistribute it and/or modify it under
|
|
9
|
-
# the terms of the MIT License.
|
|
10
|
-
#
|
|
11
|
-
# You should have received a copy of the MIT License along with AttrBool.
|
|
12
|
-
# If not, see <https://choosealicense.com/licenses/mit/>.
|
|
13
|
-
#++
|
|
14
|
-
|
|
15
4
|
|
|
16
5
|
require_relative 'lib/attr_bool/version'
|
|
17
6
|
|
|
18
|
-
Gem::Specification.new
|
|
7
|
+
Gem::Specification.new do |spec|
|
|
19
8
|
spec.name = 'attr_bool'
|
|
20
9
|
spec.version = AttrBool::VERSION
|
|
21
|
-
spec.authors = ['Jonathan Bradley Whited
|
|
22
|
-
spec.email = ['
|
|
10
|
+
spec.authors = ['Jonathan Bradley Whited']
|
|
11
|
+
spec.email = ['code@esotericpig.com']
|
|
23
12
|
spec.licenses = ['MIT']
|
|
24
13
|
spec.homepage = 'https://github.com/esotericpig/attr_bool'
|
|
25
14
|
spec.summary = 'Finally attr_accessor & attr_reader with question marks for booleans!?'
|
|
26
|
-
spec.description = <<-
|
|
15
|
+
spec.description = <<-DESC.gsub(/\s+/,' ').strip
|
|
27
16
|
#{spec.summary}
|
|
28
17
|
Simply use: attr_accessor?, attr_reader?, attr_bool, attr_bool?.
|
|
29
18
|
Default values can also be passed in as the last argument
|
|
30
19
|
or with the 'default: ' keyword argument.
|
|
31
20
|
In a Module/Class, extend 'AttrBool::Ext',
|
|
32
21
|
or in the file, require 'attr_bool/core_ext'.
|
|
33
|
-
|
|
34
|
-
|
|
22
|
+
DESC
|
|
23
|
+
|
|
35
24
|
spec.metadata = {
|
|
36
25
|
'homepage_uri' => 'https://github.com/esotericpig/attr_bool',
|
|
37
26
|
'source_code_uri' => 'https://github.com/esotericpig/attr_bool',
|
|
38
27
|
'bug_tracker_uri' => 'https://github.com/esotericpig/attr_bool/issues',
|
|
39
28
|
'changelog_uri' => 'https://github.com/esotericpig/attr_bool/blob/master/CHANGELOG.md',
|
|
40
29
|
}
|
|
41
|
-
|
|
30
|
+
|
|
42
31
|
spec.required_ruby_version = '>= 2.4'
|
|
43
32
|
spec.require_paths = ['lib']
|
|
44
|
-
|
|
33
|
+
|
|
45
34
|
spec.files = [
|
|
46
35
|
Dir.glob(File.join("{#{spec.require_paths.join(',')}}",'**','*.{erb,rb}')),
|
|
47
36
|
%W[ Gemfile #{spec.name}.gemspec Rakefile ],
|
|
48
37
|
%w[ LICENSE.txt ],
|
|
49
|
-
].flatten
|
|
50
|
-
|
|
51
|
-
spec.add_development_dependency 'bundler' ,'~> 2.
|
|
38
|
+
].flatten
|
|
39
|
+
|
|
40
|
+
spec.add_development_dependency 'bundler' ,'~> 2.2'
|
|
52
41
|
spec.add_development_dependency 'minitest' ,'~> 5.14'
|
|
53
42
|
spec.add_development_dependency 'rake' ,'~> 13.0'
|
|
54
|
-
spec.add_development_dependency 'rdoc' ,'~> 6.
|
|
43
|
+
spec.add_development_dependency 'rdoc' ,'~> 6.3' # YARDoc RDoc (*.rb)
|
|
55
44
|
spec.add_development_dependency 'redcarpet' ,'~> 3.5' # YARDoc Markdown (*.md)
|
|
56
45
|
spec.add_development_dependency 'yard' ,'~> 0.9' # Doc
|
|
57
|
-
|
|
46
|
+
|
|
58
47
|
spec.extra_rdoc_files = %w[ LICENSE.txt ]
|
|
59
|
-
|
|
48
|
+
|
|
60
49
|
spec.rdoc_options = [
|
|
61
50
|
'--hyperlink-all','--show-hash',
|
|
62
51
|
'--title',"AttrBool v#{AttrBool::VERSION} Doc",
|
data/lib/attr_bool.rb
CHANGED
|
@@ -1,23 +1,18 @@
|
|
|
1
|
-
#!/usr/bin/env ruby
|
|
2
1
|
# encoding: UTF-8
|
|
3
2
|
# frozen_string_literal: true
|
|
4
3
|
|
|
5
4
|
#--
|
|
6
5
|
# This file is part of AttrBool.
|
|
7
|
-
# Copyright (c) 2020 Jonathan Bradley Whited
|
|
8
|
-
#
|
|
9
|
-
#
|
|
10
|
-
# the terms of the MIT License.
|
|
11
|
-
#
|
|
12
|
-
# You should have received a copy of the MIT License along with AttrBool.
|
|
13
|
-
# If not, see <https://choosealicense.com/licenses/mit/>.
|
|
6
|
+
# Copyright (c) 2020-2021 Jonathan Bradley Whited
|
|
7
|
+
#
|
|
8
|
+
# SPDX-License-Identifier: MIT
|
|
14
9
|
#++
|
|
15
10
|
|
|
16
11
|
|
|
17
12
|
require 'attr_bool/version'
|
|
18
13
|
|
|
19
14
|
###
|
|
20
|
-
# @author Jonathan Bradley Whited
|
|
15
|
+
# @author Jonathan Bradley Whited
|
|
21
16
|
# @since 0.1.0
|
|
22
17
|
###
|
|
23
18
|
module AttrBool
|
|
@@ -26,47 +21,47 @@ module AttrBool
|
|
|
26
21
|
# I found the following to be the case on my system:
|
|
27
22
|
# - +define_method+ is faster than +module_eval+ & +class_eval+
|
|
28
23
|
# - +? true : false+ (ternary operator) is faster than +!!+ (surprisingly)
|
|
29
|
-
#
|
|
24
|
+
#
|
|
30
25
|
# To run benchmark code:
|
|
31
26
|
# $ bundle exec rake benchmark
|
|
32
|
-
#
|
|
33
|
-
# @author Jonathan Bradley Whited
|
|
27
|
+
#
|
|
28
|
+
# @author Jonathan Bradley Whited
|
|
34
29
|
# @since 0.2.0
|
|
35
30
|
###
|
|
36
31
|
module Ext
|
|
37
32
|
def attr_accessor?(*var_ids,default: nil,reader: nil,writer: nil,&block)
|
|
38
33
|
if block
|
|
39
|
-
reader = block if reader.nil?
|
|
40
|
-
writer = block if writer.nil?
|
|
34
|
+
reader = block if reader.nil?
|
|
35
|
+
writer = block if writer.nil?
|
|
41
36
|
end
|
|
42
|
-
|
|
43
|
-
if default.nil?
|
|
37
|
+
|
|
38
|
+
if default.nil? && reader.nil?
|
|
44
39
|
last = var_ids[-1]
|
|
45
|
-
|
|
40
|
+
|
|
46
41
|
if !last.is_a?(String) && !last.is_a?(Symbol)
|
|
47
|
-
default = var_ids.pop
|
|
42
|
+
default = var_ids.pop
|
|
48
43
|
end
|
|
49
44
|
end
|
|
50
|
-
|
|
45
|
+
|
|
51
46
|
attr_reader?(*var_ids,default: default,&reader)
|
|
52
47
|
attr_writer?(*var_ids,&writer)
|
|
53
48
|
end
|
|
54
|
-
|
|
49
|
+
|
|
55
50
|
def attr_reader?(*var_ids,default: nil,&block)
|
|
56
|
-
no_default = (default.nil?
|
|
57
|
-
|
|
51
|
+
no_default = (default.nil? && !block)
|
|
52
|
+
|
|
58
53
|
if no_default
|
|
59
54
|
last = var_ids[-1]
|
|
60
|
-
|
|
55
|
+
|
|
61
56
|
if !last.is_a?(String) && !last.is_a?(Symbol)
|
|
62
|
-
default = var_ids.pop
|
|
57
|
+
default = var_ids.pop
|
|
63
58
|
no_default = false
|
|
64
59
|
end
|
|
65
60
|
end
|
|
66
|
-
|
|
67
|
-
var_ids.each
|
|
61
|
+
|
|
62
|
+
var_ids.each do |var_id|
|
|
68
63
|
var_id_q = :"#{var_id}?"
|
|
69
|
-
|
|
64
|
+
|
|
70
65
|
if no_default
|
|
71
66
|
define_method(var_id_q) do
|
|
72
67
|
instance_variable_get(:"@#{var_id}")
|
|
@@ -76,7 +71,7 @@ module AttrBool
|
|
|
76
71
|
define_method(var_id_q,&block)
|
|
77
72
|
else
|
|
78
73
|
at_var_id = :"@#{var_id}"
|
|
79
|
-
|
|
74
|
+
|
|
80
75
|
define_method(var_id_q) do
|
|
81
76
|
instance_variable_defined?(at_var_id) ? instance_variable_get(at_var_id) : default
|
|
82
77
|
end
|
|
@@ -84,64 +79,64 @@ module AttrBool
|
|
|
84
79
|
end
|
|
85
80
|
end
|
|
86
81
|
end
|
|
87
|
-
|
|
82
|
+
|
|
88
83
|
# This should only be used when you want to pass in a block/proc.
|
|
89
84
|
def attr_writer?(*var_ids,&block)
|
|
90
85
|
if block
|
|
91
|
-
var_ids.each
|
|
86
|
+
var_ids.each do |var_id|
|
|
92
87
|
define_method(:"#{var_id}=",&block)
|
|
93
88
|
end
|
|
94
89
|
else
|
|
95
90
|
last = var_ids[-1]
|
|
96
|
-
|
|
91
|
+
|
|
97
92
|
if !last.is_a?(String) && !last.is_a?(Symbol)
|
|
98
93
|
raise ArgumentError,'default value not allowed for writer'
|
|
99
94
|
end
|
|
100
|
-
|
|
95
|
+
|
|
101
96
|
attr_writer(*var_ids)
|
|
102
97
|
end
|
|
103
98
|
end
|
|
104
|
-
|
|
99
|
+
|
|
105
100
|
def attr_bool(*var_ids,default: nil,reader: nil,writer: nil,&block)
|
|
106
101
|
if block
|
|
107
|
-
reader = block if reader.nil?
|
|
108
|
-
writer = block if writer.nil?
|
|
102
|
+
reader = block if reader.nil?
|
|
103
|
+
writer = block if writer.nil?
|
|
109
104
|
end
|
|
110
|
-
|
|
111
|
-
if default.nil?
|
|
105
|
+
|
|
106
|
+
if default.nil? && reader.nil?
|
|
112
107
|
last = var_ids[-1]
|
|
113
|
-
|
|
108
|
+
|
|
114
109
|
if !last.is_a?(String) && !last.is_a?(Symbol)
|
|
115
|
-
default = var_ids.pop
|
|
110
|
+
default = var_ids.pop
|
|
116
111
|
end
|
|
117
112
|
end
|
|
118
|
-
|
|
113
|
+
|
|
119
114
|
attr_bool?(*var_ids,default: default,&reader)
|
|
120
115
|
attr_booler(*var_ids,&writer)
|
|
121
116
|
end
|
|
122
117
|
alias_method :attr_boolor,:attr_bool
|
|
123
|
-
|
|
118
|
+
|
|
124
119
|
def attr_bool?(*var_ids,default: nil,&block)
|
|
125
|
-
no_default = default.nil?
|
|
126
|
-
|
|
120
|
+
no_default = default.nil?
|
|
121
|
+
|
|
127
122
|
if no_default
|
|
128
123
|
no_default = !block
|
|
129
|
-
|
|
124
|
+
|
|
130
125
|
if no_default
|
|
131
126
|
last = var_ids[-1]
|
|
132
|
-
|
|
127
|
+
|
|
133
128
|
if !last.is_a?(String) && !last.is_a?(Symbol)
|
|
134
|
-
default = var_ids.pop
|
|
129
|
+
default = var_ids.pop ? true : false
|
|
135
130
|
no_default = false
|
|
136
131
|
end
|
|
137
132
|
end
|
|
138
133
|
else
|
|
139
134
|
default = default ? true : false
|
|
140
135
|
end
|
|
141
|
-
|
|
142
|
-
var_ids.each
|
|
136
|
+
|
|
137
|
+
var_ids.each do |var_id|
|
|
143
138
|
var_id_q = :"#{var_id}?"
|
|
144
|
-
|
|
139
|
+
|
|
145
140
|
if no_default
|
|
146
141
|
define_method(var_id_q) do
|
|
147
142
|
instance_variable_get(:"@#{var_id}") ? true : false
|
|
@@ -151,7 +146,7 @@ module AttrBool
|
|
|
151
146
|
define_method(var_id_q,&block)
|
|
152
147
|
else
|
|
153
148
|
at_var_id = :"@#{var_id}"
|
|
154
|
-
|
|
149
|
+
|
|
155
150
|
define_method(var_id_q) do
|
|
156
151
|
if instance_variable_defined?(at_var_id)
|
|
157
152
|
instance_variable_get(at_var_id) ? true : false
|
|
@@ -163,19 +158,19 @@ module AttrBool
|
|
|
163
158
|
end
|
|
164
159
|
end
|
|
165
160
|
end
|
|
166
|
-
|
|
161
|
+
|
|
167
162
|
def attr_booler(*var_ids,&block)
|
|
168
163
|
if !block
|
|
169
164
|
last = var_ids[-1]
|
|
170
|
-
|
|
165
|
+
|
|
171
166
|
if !last.is_a?(String) && !last.is_a?(Symbol)
|
|
172
167
|
raise ArgumentError,'default value not allowed for writer'
|
|
173
168
|
end
|
|
174
169
|
end
|
|
175
|
-
|
|
176
|
-
var_ids.each
|
|
170
|
+
|
|
171
|
+
var_ids.each do |var_id|
|
|
177
172
|
var_id_eq = :"#{var_id}="
|
|
178
|
-
|
|
173
|
+
|
|
179
174
|
if block
|
|
180
175
|
define_method(var_id_eq,&block)
|
|
181
176
|
else
|
data/lib/attr_bool/core_ext.rb
CHANGED
|
@@ -1,16 +1,11 @@
|
|
|
1
|
-
#!/usr/bin/env ruby
|
|
2
1
|
# encoding: UTF-8
|
|
3
2
|
# frozen_string_literal: true
|
|
4
3
|
|
|
5
4
|
#--
|
|
6
5
|
# This file is part of AttrBool.
|
|
7
|
-
# Copyright (c) 2020 Jonathan Bradley Whited
|
|
8
|
-
#
|
|
9
|
-
#
|
|
10
|
-
# the terms of the MIT License.
|
|
11
|
-
#
|
|
12
|
-
# You should have received a copy of the MIT License along with AttrBool.
|
|
13
|
-
# If not, see <https://choosealicense.com/licenses/mit/>.
|
|
6
|
+
# Copyright (c) 2020-2021 Jonathan Bradley Whited
|
|
7
|
+
#
|
|
8
|
+
# SPDX-License-Identifier: MIT
|
|
14
9
|
#++
|
|
15
10
|
|
|
16
11
|
|
|
@@ -18,7 +13,7 @@ require 'attr_bool'
|
|
|
18
13
|
|
|
19
14
|
module AttrBool
|
|
20
15
|
###
|
|
21
|
-
# @author Jonathan Bradley Whited
|
|
16
|
+
# @author Jonathan Bradley Whited
|
|
22
17
|
# @since 0.2.0
|
|
23
18
|
###
|
|
24
19
|
module CoreExt
|
data/lib/attr_bool/version.rb
CHANGED
|
@@ -1,19 +1,14 @@
|
|
|
1
|
-
#!/usr/bin/env ruby
|
|
2
1
|
# encoding: UTF-8
|
|
3
2
|
# frozen_string_literal: true
|
|
4
3
|
|
|
5
4
|
#--
|
|
6
5
|
# This file is part of AttrBool.
|
|
7
|
-
# Copyright (c) 2020 Jonathan Bradley Whited
|
|
8
|
-
#
|
|
9
|
-
#
|
|
10
|
-
# the terms of the MIT License.
|
|
11
|
-
#
|
|
12
|
-
# You should have received a copy of the MIT License along with AttrBool.
|
|
13
|
-
# If not, see <https://choosealicense.com/licenses/mit/>.
|
|
6
|
+
# Copyright (c) 2020-2021 Jonathan Bradley Whited
|
|
7
|
+
#
|
|
8
|
+
# SPDX-License-Identifier: MIT
|
|
14
9
|
#++
|
|
15
10
|
|
|
16
11
|
|
|
17
12
|
module AttrBool
|
|
18
|
-
VERSION = '0.2.
|
|
13
|
+
VERSION = '0.2.2'
|
|
19
14
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: attr_bool
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.2.
|
|
4
|
+
version: 0.2.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
|
-
- Jonathan Bradley Whited
|
|
8
|
-
autorequire:
|
|
7
|
+
- Jonathan Bradley Whited
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2021-06-16 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -16,14 +16,14 @@ dependencies:
|
|
|
16
16
|
requirements:
|
|
17
17
|
- - "~>"
|
|
18
18
|
- !ruby/object:Gem::Version
|
|
19
|
-
version: '2.
|
|
19
|
+
version: '2.2'
|
|
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: '2.
|
|
26
|
+
version: '2.2'
|
|
27
27
|
- !ruby/object:Gem::Dependency
|
|
28
28
|
name: minitest
|
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -58,14 +58,14 @@ dependencies:
|
|
|
58
58
|
requirements:
|
|
59
59
|
- - "~>"
|
|
60
60
|
- !ruby/object:Gem::Version
|
|
61
|
-
version: '6.
|
|
61
|
+
version: '6.3'
|
|
62
62
|
type: :development
|
|
63
63
|
prerelease: false
|
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
65
|
requirements:
|
|
66
66
|
- - "~>"
|
|
67
67
|
- !ruby/object:Gem::Version
|
|
68
|
-
version: '6.
|
|
68
|
+
version: '6.3'
|
|
69
69
|
- !ruby/object:Gem::Dependency
|
|
70
70
|
name: redcarpet
|
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -99,7 +99,7 @@ description: 'Finally attr_accessor & attr_reader with question marks for boolea
|
|
|
99
99
|
can also be passed in as the last argument or with the ''default: '' keyword argument.
|
|
100
100
|
In a Module/Class, extend ''AttrBool::Ext'', or in the file, require ''attr_bool/core_ext''.'
|
|
101
101
|
email:
|
|
102
|
-
-
|
|
102
|
+
- code@esotericpig.com
|
|
103
103
|
executables: []
|
|
104
104
|
extensions: []
|
|
105
105
|
extra_rdoc_files:
|
|
@@ -120,12 +120,12 @@ metadata:
|
|
|
120
120
|
source_code_uri: https://github.com/esotericpig/attr_bool
|
|
121
121
|
bug_tracker_uri: https://github.com/esotericpig/attr_bool/issues
|
|
122
122
|
changelog_uri: https://github.com/esotericpig/attr_bool/blob/master/CHANGELOG.md
|
|
123
|
-
post_install_message:
|
|
123
|
+
post_install_message:
|
|
124
124
|
rdoc_options:
|
|
125
125
|
- "--hyperlink-all"
|
|
126
126
|
- "--show-hash"
|
|
127
127
|
- "--title"
|
|
128
|
-
- AttrBool v0.2.
|
|
128
|
+
- AttrBool v0.2.2 Doc
|
|
129
129
|
require_paths:
|
|
130
130
|
- lib
|
|
131
131
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
@@ -139,8 +139,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
139
139
|
- !ruby/object:Gem::Version
|
|
140
140
|
version: '0'
|
|
141
141
|
requirements: []
|
|
142
|
-
rubygems_version: 3.
|
|
143
|
-
signing_key:
|
|
142
|
+
rubygems_version: 3.2.15
|
|
143
|
+
signing_key:
|
|
144
144
|
specification_version: 4
|
|
145
145
|
summary: Finally attr_accessor & attr_reader with question marks for booleans!?
|
|
146
146
|
test_files: []
|