yinum 2.0.0 → 2.0.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/Gemfile.lock +1 -1
- data/lib/enum/helpers/enum_attribute.rb +15 -16
- data/lib/enum/version.rb +1 -1
- data/lib/enum.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 03314e7573a043c5ce587676825cfb8a72d6e776
|
4
|
+
data.tar.gz: a014ba1d54eea50332d2116d20e3b529e83bd534
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: eac85ff636e07318c7d2829f265c0595272631e6f9e4528dc1c66c4406227f4a388e0bf99612a551a8a007472ff287ec2ce5453c844834460d1a42d8952c3d7c
|
7
|
+
data.tar.gz: d7fd76c945942ac5d7a9b971ca161866c31842de0976aa372de5198dfe0153c2cfa27a30a7a8966f08526c7ed725fda01afb76d5802d70105d7b6e7273a67199
|
data/Gemfile.lock
CHANGED
@@ -23,28 +23,27 @@ module Enum::Helpers::EnumAttribute
|
|
23
23
|
begin
|
24
24
|
alias_method reader_without_enum, reader
|
25
25
|
rescue NameError # reader does not exist
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
26
|
+
no_reader = true
|
27
|
+
end
|
28
|
+
define_method(reader) do
|
29
|
+
v = no_reader ? super() : send(reader_without_enum)
|
30
|
+
(ev = e.get(v)).nil? ? Enum::EnumValue.new(e, v) : ev
|
31
31
|
end
|
32
32
|
# attribute writer
|
33
33
|
writer, writer_without_enum = :"#{attr}=", :"#{attr}_without_enum="
|
34
34
|
begin
|
35
35
|
alias_method writer_without_enum, writer
|
36
36
|
rescue NameError # writer does not exist
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
end
|
37
|
+
no_writer = true
|
38
|
+
end
|
39
|
+
define_method(writer) do |v|
|
40
|
+
v = case
|
41
|
+
when v.enum_value? then v.value
|
42
|
+
# might be received from forms
|
43
|
+
when v.nil?, v == "" then v
|
44
|
+
else e[v].value
|
45
|
+
end
|
46
|
+
no_writer ? super(v) : send(writer_without_enum, v)
|
48
47
|
end
|
49
48
|
|
50
49
|
if options[:qualifier]
|
data/lib/enum/version.rb
CHANGED
data/lib/enum.rb
CHANGED
@@ -5,7 +5,7 @@ class Enum
|
|
5
5
|
attr_reader :klass, :name, :by_name, :by_value
|
6
6
|
|
7
7
|
def initialize(name, klass=nil, hash={})
|
8
|
-
klass, hash = nil, klass unless klass.is_a?(
|
8
|
+
klass, hash = nil, klass unless klass.is_a?(Module)
|
9
9
|
@name, @klass = name, klass
|
10
10
|
map_hash(hash)
|
11
11
|
generate_methods
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: yinum
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Oded Niv
|
@@ -89,7 +89,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
89
89
|
version: '0'
|
90
90
|
requirements: []
|
91
91
|
rubyforge_project: yinum
|
92
|
-
rubygems_version: 2.2
|
92
|
+
rubygems_version: 2.4.2
|
93
93
|
signing_key:
|
94
94
|
specification_version: 4
|
95
95
|
summary: Enum implementation
|