yinum 2.0.0 → 2.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1e8081295eac8fc84fd85a1d3be91ab25a0c38ea
4
- data.tar.gz: b3e09fe7ab057e6d5376c7ff340604e5b1dd96a9
3
+ metadata.gz: 03314e7573a043c5ce587676825cfb8a72d6e776
4
+ data.tar.gz: a014ba1d54eea50332d2116d20e3b529e83bd534
5
5
  SHA512:
6
- metadata.gz: dba6fa59647819652cabe411f0af9354abe87b9b522cc4dd03f3ebbfa0837a91e602e6dc195cf91f09cce17d718647037a93e027b3df4da159cfb2450f22d509
7
- data.tar.gz: a0e2d4eabcdfdc21557f785db1e0c5b33e9e9f2e0f32f84c2aa59c0cb663993745eaaaa88a14371f808a65be0d3d162932c850120487426a9ea6e6eea5bb5d58
6
+ metadata.gz: eac85ff636e07318c7d2829f265c0595272631e6f9e4528dc1c66c4406227f4a388e0bf99612a551a8a007472ff287ec2ce5453c844834460d1a42d8952c3d7c
7
+ data.tar.gz: d7fd76c945942ac5d7a9b971ca161866c31842de0976aa372de5198dfe0153c2cfa27a30a7a8966f08526c7ed725fda01afb76d5802d70105d7b6e7273a67199
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- yinum (2.0.0)
4
+ yinum (2.0.1)
5
5
 
6
6
  GEM
7
7
  remote: http://rubygems.org/
@@ -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
- else
27
- define_method(reader) do
28
- v = send(reader_without_enum)
29
- (ev = e.get(v)).nil? ? Enum::EnumValue.new(e, v) : ev
30
- end
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
- else
38
- define_method(writer) do |v|
39
- case
40
- when v.enum_value?
41
- send(writer_without_enum, v.value)
42
- when v.nil?, v == "" # might be received from forms
43
- send(writer_without_enum, v)
44
- else
45
- send(writer_without_enum, e[v].value)
46
- end
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
@@ -1,3 +1,3 @@
1
1
  class Enum
2
- VERSION = '2.0.0'
2
+ VERSION = '2.0.1'
3
3
  end
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?(Class)
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.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.0
92
+ rubygems_version: 2.4.2
93
93
  signing_key:
94
94
  specification_version: 4
95
95
  summary: Enum implementation