rubyenum 0.0.2 → 0.0.3

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: a13d9004ed30ecc48f10fde6c097a520b74c6769
4
- data.tar.gz: 194d40e10e92cdf7f656d3a11dd86e01f510cb05
3
+ metadata.gz: 59018f7aa26b4d793b4734b2ba14b92791a4dead
4
+ data.tar.gz: fb035eefd79d94100f32e79f92545e44e99d3e6c
5
5
  SHA512:
6
- metadata.gz: 3c3bd66a2856d0b927a3912bcc27ea44b27af11e85578434a37edf4109d236bc451cebb61a3711d9c1671588879597780514eb6fcbc157826a479c32389a014f
7
- data.tar.gz: dddcba56f810aa9668c0da97d929503276415d4a8457c8a694d8506507cf04246b561dfc72beab0ff21e2ee566ac523db515d975df8bfcfbe7152b603d81d5ae
6
+ metadata.gz: c86272331b68ea897d66e50c280be1dfd598e37d7498e98ea1ae677ad73fbb1baa24a2706dccad658b0f492f4490a4d680cc5c863bcae4b3485542523c6ce8a5
7
+ data.tar.gz: b8b57468287d3aaee0a2781d53b7ebf7833702f4b5d790334b923e6b6109524529f3e98a3d751357fa16be0124ba4351b687ae140b89acca1587a18902d1a449
@@ -1,3 +1,3 @@
1
1
  module Rubyenum
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
data/lib/rubyenum.rb CHANGED
@@ -5,9 +5,12 @@ module RubyEnum
5
5
  class Base
6
6
 
7
7
  @@all = []
8
-
9
8
  @@fields = []
10
9
 
10
+ attr_reader :name
11
+
12
+ private_class_method :new
13
+
11
14
  def self.all
12
15
  @@all
13
16
  end
@@ -22,8 +25,12 @@ module RubyEnum
22
25
  end
23
26
  end
24
27
 
28
+ def self.value_of(symbol)
29
+ const_get(symbol.to_s)
30
+ end
31
+
25
32
  def self.enum(symbol, *vals)
26
- enumObj = EnumObj.new symbol.to_s
33
+ enumObj = new symbol.to_s
27
34
  const_set(symbol.to_s, enumObj)
28
35
  vals.each_with_index do |val, i|
29
36
  if get_fields[i].nil?
@@ -34,16 +41,6 @@ module RubyEnum
34
41
  @@all << enumObj
35
42
  end
36
43
 
37
- end
38
-
39
- class EnumObj
40
-
41
- attr_reader :name
42
-
43
- def initialize(name)
44
- @name = name
45
- end
46
-
47
44
  def add_attribute(attr_name, value)
48
45
  var = instance_variable_set(:"@#{attr_name}", value)
49
46
  define_singleton_method("#{attr_name}") do
@@ -51,6 +48,11 @@ module RubyEnum
51
48
  end
52
49
  end
53
50
 
51
+ def initialize(name)
52
+ @name = name
53
+ end
54
+
55
+
54
56
  end
55
57
 
56
58
  ## depends on rails
@@ -104,8 +106,8 @@ end
104
106
  # enumify :animal, :with => :animal_example, :use => :id
105
107
 
106
108
  # # overides getter and setter methods
107
- # # animal=(EnumObj), sets the property to the :via value
108
- # # animal => EnumObj, gets the property from the :via value
109
+ # # animal=(AnimalExample), sets the property to the :use value @animal = id
110
+ # # animal => AnimalExample, gets the property from the :use value and converts to Enum
109
111
 
110
112
 
111
113
  # end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubyenum
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - georgemayer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-01-14 00:00:00.000000000 Z
11
+ date: 2015-01-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler