enum 0.1.1 → 1.0.0

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.
@@ -0,0 +1,23 @@
1
+ # -*- ruby -*-
2
+
3
+ require 'autotest/restart'
4
+
5
+ # Autotest.add_hook :initialize do |at|
6
+ # at.extra_files << "../some/external/dependency.rb"
7
+ #
8
+ # at.libs << ":../some/external"
9
+ #
10
+ # at.add_exception 'vendor'
11
+ #
12
+ # at.add_mapping(/dependency.rb/) do |f, _|
13
+ # at.files_matching(/test_.*rb$/)
14
+ # end
15
+ #
16
+ # %w(TestA TestB).each do |klass|
17
+ # at.extra_class_map[klass] = "test/test_misc.rb"
18
+ # end
19
+ # end
20
+
21
+ # Autotest.add_hook :run_command do |at|
22
+ # system "rake build"
23
+ # end
@@ -0,0 +1,6 @@
1
+ === 1.0.0 / 2010-09-13
2
+
3
+ * 1 major enhancement
4
+
5
+ * Birthday!
6
+
@@ -0,0 +1,7 @@
1
+ .autotest
2
+ History.txt
3
+ Manifest.txt
4
+ README.txt
5
+ Rakefile
6
+ lib/enum.rb
7
+ test/test_enum.rb
@@ -0,0 +1,76 @@
1
+ = enum
2
+
3
+ http://github.com/capnregex/enum
4
+
5
+ == DESCRIPTION:
6
+
7
+ A java like Enum class for ruby.
8
+
9
+ A while ago I was exploring Java, and came across the Enum class, which had
10
+ some interesting functionality, and I decided that I would like something like
11
+ it.
12
+
13
+ Conceptually if you just need a unique identifier you may be perfectly happy using a :symbol, and that would likely be a simpler way of having a controll flag. However, if you want to have a set of unique identifiers that you can address, iterate over, assign properties to, etc, then this may be something you would be interested in.
14
+
15
+ == FEATURES/PROBLEMS:
16
+
17
+ Provide the java Enum idiom for Ruby.
18
+
19
+ For examples of use cases, see the examples in test.
20
+
21
+ == SYNOPSIS:
22
+
23
+ class PrimaryColors < Enum
24
+ enum %w(Red Yellow Blue)
25
+ end
26
+
27
+ class Colors < Enum
28
+ enum_field :code
29
+ enum do
30
+ RED '#ff0000'
31
+ GREEN '#00ff00'
32
+ BLUE '#0000ff'
33
+ end
34
+ end
35
+
36
+ == REQUIREMENTS:
37
+
38
+ ruby, rubygems
39
+
40
+ == INSTALL:
41
+
42
+ sudo gem install enum
43
+
44
+ == DEVELOPERS:
45
+
46
+ After checking out the source, run:
47
+
48
+ $ rake newb
49
+
50
+ This task will install any missing dependencies, run the tests/specs,
51
+ and generate the RDoc.
52
+
53
+ == LICENSE:
54
+
55
+ (The MIT License)
56
+
57
+ Copyright (c) 2010
58
+
59
+ Permission is hereby granted, free of charge, to any person obtaining
60
+ a copy of this software and associated documentation files (the
61
+ 'Software'), to deal in the Software without restriction, including
62
+ without limitation the rights to use, copy, modify, merge, publish,
63
+ distribute, sublicense, and/or sell copies of the Software, and to
64
+ permit persons to whom the Software is furnished to do so, subject to
65
+ the following conditions:
66
+
67
+ The above copyright notice and this permission notice shall be
68
+ included in all copies or substantial portions of the Software.
69
+
70
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
71
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
72
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
73
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
74
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
75
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
76
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,12 @@
1
+ # -*- ruby -*-
2
+
3
+ require 'rubygems'
4
+ require 'hoe'
5
+
6
+ Hoe.spec 'enum' do
7
+ developer('capnregex', 'capnregex@gmail.com')
8
+
9
+ # self.rubyforge_name = 'enumx' # if different than 'enum'
10
+ end
11
+
12
+ # vim: syntax=ruby
@@ -1,25 +1,49 @@
1
1
  # Enum
2
2
  class Enum
3
+ VERSION = '1.0.0'
4
+ include Comparable
3
5
  protected
4
6
  def init *args
7
+ self.class.fields.each do |field|
8
+ instance_variable_set("@#{field}",args.shift)
9
+ end
10
+ end
11
+ def initialize *args, &block
12
+ @id = self.class.next_ordinal
13
+ sym = args.shift
14
+ @sym = sym.to_sym
15
+ @name = args.shift || sym.to_s
16
+ init(*args)
17
+ if block
18
+ instance_eval( &block )
19
+ end
5
20
  end
6
21
  public
7
- attr_reader :id, :name
8
- def initialize *args
9
- @id = args.shift
10
- @name = args.shift
11
- init *args
22
+ attr_reader :id
23
+ alias ordinal id
24
+ def <=> other
25
+ if self.class == other.class
26
+ ordinal <=> other.ordinal
27
+ else
28
+ nil
29
+ end
12
30
  end
13
- def to_sym;name;end
14
- def to_s;name.to_s;end
31
+ def to_sym;@sym;end
32
+ def to_s;@name;end
33
+ alias name to_s
34
+ alias title to_s
15
35
  def to_i;@id;end
16
- def inspect;"#{self.class}::#{name}##{id}";end
36
+ def to_f;@id.to_f;end
37
+ def inspect;"#{self.class}::#{to_sym}";end
17
38
  def save;end
18
39
  def save!;end
19
40
  class << self
20
41
  def values
21
42
  @values ||= []
22
43
  end
44
+ def fields
45
+ @fields ||= []
46
+ end
23
47
  alias all values
24
48
  def find id
25
49
  values[id]
@@ -29,19 +53,83 @@ public
29
53
  yield value
30
54
  end
31
55
  end
56
+ def save
57
+ end
58
+ def save!
59
+ end
60
+ def next_ordinal
61
+ o = @next_ordinal ||= 0
62
+ @next_ordinal = o + step
63
+ o
64
+ end
32
65
  protected
33
- def missing *args
34
- name = args.first
35
- value = new(values.length,*args)
36
- values.push value
37
- const_set(name,value)
38
- value
66
+ def start_at i
67
+ @next_ordinal = i
68
+ end
69
+ def step_by n
70
+ @step = n
39
71
  end
40
- def method_missing *args
41
- missing *args
72
+ def enum_fields *fields
73
+ @fields = fields
74
+ send :attr_reader, *fields
75
+ end
76
+ def enum *args, &block
77
+ unless args.empty?
78
+ if args.length == 1 and ( arg = args.first ) and arg.kind_of? Array
79
+ arg.each do |a|
80
+ add_enum a
81
+ end
82
+ else
83
+ args.each do |arg|
84
+ add_enum arg
85
+ end
86
+ end
87
+ end
88
+ if block
89
+ Enumeration.new self, &block
90
+ end
91
+ nil
92
+ end
93
+ def step
94
+ @step ||= 1
95
+ end
96
+ def enum_sym arg
97
+ arg = arg.to_s.upcase
98
+ case arg
99
+ when /\s/
100
+ arg.gsub(/\s+/,'_').to_sym
101
+ else
102
+ arg.to_sym
103
+ end
104
+ end
105
+ def add_enum *args, &block
106
+ c = args.shift
107
+ name = c.to_s
108
+ sym = enum_sym(c)
109
+ if const_defined? sym
110
+ const_get sym
111
+ else
112
+ value = new(sym,name,*args,&block)
113
+ values.push value
114
+ const_set(sym,value)
115
+ value
116
+ end
117
+ end
118
+ end
119
+
120
+ # use the Enumeration class to constrain the scope of where the Enum definition can take place.
121
+ class Enumeration
122
+ def initialize parent, *args, &block
123
+ @parent = parent
124
+ instance_eval(&block)
125
+ end
126
+ protected
127
+ def method_missing *args, &block
128
+ @parent.send :add_enum, *args, &block
42
129
  end
43
- def const_missing *args
44
- missing *args
130
+ def const_missing *args, &block
131
+ @parent.send :add_enum, *args, &block
45
132
  end
46
133
  end
134
+
47
135
  end
@@ -0,0 +1,34 @@
1
+
2
+ require "test/unit"
3
+ require "card"
4
+
5
+ class TestCard < Test::Unit::TestCase
6
+ def test_card_sanity
7
+ assert_equal Card::Rank::TEN.to_i, 10
8
+ assert_equal [Card::Suit::CLUBS, Card::Suit::DIAMONDS, Card::Suit::HEARTS,
9
+ Card::Suit::SPADES], Card::Suit.values
10
+ assert_equal [Card::Rank::DEUCE, Card::Rank::THREE, Card::Rank::FOUR,
11
+ Card::Rank::FIVE, Card::Rank::SIX, Card::Rank::SEVEN, Card::Rank::EIGHT,
12
+ Card::Rank::NINE, Card::Rank::TEN, Card::Rank::JACK, Card::Rank::QUEEN,
13
+ Card::Rank::KING, Card::Rank::ACE], Card::Rank.values
14
+ assert_equal [Card::DEUCE_OF_CLUBS, Card::THREE_OF_CLUBS,
15
+ Card::FOUR_OF_CLUBS, Card::FIVE_OF_CLUBS, Card::SIX_OF_CLUBS,
16
+ Card::SEVEN_OF_CLUBS, Card::EIGHT_OF_CLUBS, Card::NINE_OF_CLUBS,
17
+ Card::TEN_OF_CLUBS, Card::JACK_OF_CLUBS, Card::QUEEN_OF_CLUBS,
18
+ Card::KING_OF_CLUBS, Card::ACE_OF_CLUBS, Card::DEUCE_OF_DIAMONDS,
19
+ Card::THREE_OF_DIAMONDS, Card::FOUR_OF_DIAMONDS, Card::FIVE_OF_DIAMONDS,
20
+ Card::SIX_OF_DIAMONDS, Card::SEVEN_OF_DIAMONDS, Card::EIGHT_OF_DIAMONDS,
21
+ Card::NINE_OF_DIAMONDS, Card::TEN_OF_DIAMONDS, Card::JACK_OF_DIAMONDS,
22
+ Card::QUEEN_OF_DIAMONDS, Card::KING_OF_DIAMONDS, Card::ACE_OF_DIAMONDS,
23
+ Card::DEUCE_OF_HEARTS, Card::THREE_OF_HEARTS, Card::FOUR_OF_HEARTS,
24
+ Card::FIVE_OF_HEARTS, Card::SIX_OF_HEARTS, Card::SEVEN_OF_HEARTS,
25
+ Card::EIGHT_OF_HEARTS, Card::NINE_OF_HEARTS, Card::TEN_OF_HEARTS,
26
+ Card::JACK_OF_HEARTS, Card::QUEEN_OF_HEARTS, Card::KING_OF_HEARTS,
27
+ Card::ACE_OF_HEARTS, Card::DEUCE_OF_SPADES, Card::THREE_OF_SPADES,
28
+ Card::FOUR_OF_SPADES, Card::FIVE_OF_SPADES, Card::SIX_OF_SPADES,
29
+ Card::SEVEN_OF_SPADES, Card::EIGHT_OF_SPADES, Card::NINE_OF_SPADES,
30
+ Card::TEN_OF_SPADES, Card::JACK_OF_SPADES, Card::QUEEN_OF_SPADES,
31
+ Card::KING_OF_SPADES, Card::ACE_OF_SPADES], Card.values
32
+ end
33
+ end
34
+
@@ -0,0 +1,31 @@
1
+
2
+ require "test/unit"
3
+ require "day"
4
+
5
+ class TestDay < Test::Unit::TestCase
6
+
7
+ def test_day_defined
8
+ assert Day
9
+ end
10
+
11
+ def tell_it_like_it_is day
12
+ case day
13
+ when Day::MONDAY then "Mondays are bad."
14
+ when Day::FRIDAY then "Fridays are better."
15
+ when Day::SATURDAY,Day::SUNDAY then "Weekends are best."
16
+ when Day then "Midweek days are soso."
17
+ else "Not a Day"
18
+ end
19
+ end
20
+
21
+ def test_day_case
22
+ assert_equal "Mondays are bad.", tell_it_like_it_is(Day::MONDAY)
23
+ assert_equal "Midweek days are soso.", tell_it_like_it_is(Day::WEDNESDAY)
24
+ assert_equal "Fridays are better.", tell_it_like_it_is(Day::FRIDAY)
25
+ assert_equal "Weekends are best.", tell_it_like_it_is(Day::SATURDAY)
26
+ assert_equal "Weekends are best.", tell_it_like_it_is(Day::SUNDAY)
27
+ assert_equal "Not a Day", tell_it_like_it_is(5)
28
+ end
29
+
30
+ end
31
+
@@ -0,0 +1,13 @@
1
+
2
+ require "test/unit"
3
+ require "card"
4
+ require "deck"
5
+
6
+ class TestDeck < Test::Unit::TestCase
7
+ def test_card_deck
8
+ deck = Deck.new.shuffle
9
+ assert_not_equal Card.values, deck.cards
10
+ assert_equal Card.values, deck.cards.sort
11
+ end
12
+ end
13
+
@@ -0,0 +1,10 @@
1
+
2
+ require "test/unit"
3
+ require "enum"
4
+
5
+ class TestEnum < Test::Unit::TestCase
6
+ def test_sanity
7
+ assert Enum
8
+ end
9
+ end
10
+
@@ -0,0 +1,94 @@
1
+
2
+ require "test/unit"
3
+ require "family"
4
+
5
+ class TestEnum < Test::Unit::TestCase
6
+
7
+ def test_family_ids
8
+ assert_equal Family::MANUAL.id, 0
9
+ assert_equal Family::CHIRP.id, 1
10
+ assert_equal Family::CANNED.id, 2
11
+ assert_equal Family::PULSE.id, 3
12
+ assert_equal Family::LEARN.id, 4
13
+ assert_equal Family::STEP.id, 5
14
+ assert_equal Family::DISTANCE.id, 6
15
+ assert_equal Family::CALORIE.id, 7
16
+ assert_equal Family::HRSS.id, 8
17
+ assert_equal Family::TRAINER.id, 9
18
+ assert_equal Family::TEST.id, 10
19
+ assert_equal Family::DEMO.id, 11
20
+ end
21
+
22
+ def test_family_syms
23
+ assert_equal Family::MANUAL.to_sym, :MANUAL
24
+ assert_equal Family::CHIRP.to_sym, :CHIRP
25
+ assert_equal Family::CANNED.to_sym, :CANNED
26
+ assert_equal Family::PULSE.to_sym, :PULSE
27
+ assert_equal Family::LEARN.to_sym, :LEARN
28
+ assert_equal Family::STEP.to_sym, :STEP
29
+ assert_equal Family::DISTANCE.to_sym, :DISTANCE
30
+ assert_equal Family::CALORIE.to_sym, :CALORIE
31
+ assert_equal Family::HRSS.to_sym, :HRSS
32
+ assert_equal Family::TRAINER.to_sym, :TRAINER
33
+ assert_equal Family::TEST.to_sym, :TEST
34
+ assert_equal Family::DEMO.to_sym, :DEMO
35
+ end
36
+
37
+ def test_family_names
38
+ assert_equal Family::MANUAL.name, 'MANUAL'
39
+ assert_equal Family::CHIRP.name, 'CHIRP'
40
+ assert_equal Family::CANNED.name, 'CANNED'
41
+ assert_equal Family::PULSE.name, 'PULSE'
42
+ assert_equal Family::LEARN.name, 'LEARN'
43
+ assert_equal Family::STEP.name, 'STEP'
44
+ assert_equal Family::DISTANCE.name, 'DISTANCE'
45
+ assert_equal Family::CALORIE.name, 'CALORIE'
46
+ assert_equal Family::HRSS.name, 'HRSS'
47
+ assert_equal Family::TRAINER.name, 'TRAINER'
48
+ assert_equal Family::TEST.name, 'TEST'
49
+ assert_equal Family::DEMO.name, 'DEMO'
50
+ end
51
+
52
+ def test_family_ordinals
53
+ assert_equal Family::MANUAL.ordinal, 0
54
+ assert_equal Family::CHIRP.ordinal, 1
55
+ assert_equal Family::CANNED.ordinal, 2
56
+ assert_equal Family::PULSE.ordinal, 3
57
+ assert_equal Family::LEARN.ordinal, 4
58
+ assert_equal Family::STEP.ordinal, 5
59
+ assert_equal Family::DISTANCE.ordinal, 6
60
+ assert_equal Family::CALORIE.ordinal, 7
61
+ assert_equal Family::HRSS.ordinal, 8
62
+ assert_equal Family::TRAINER.ordinal, 9
63
+ assert_equal Family::TEST.ordinal, 10
64
+ assert_equal Family::DEMO.ordinal, 11
65
+ end
66
+
67
+ def test_family_description
68
+ assert_equal Family::MANUAL.description, 'Manual Workout, No Automation'
69
+ assert_equal Family::CHIRP.description, 'Audio Chirp workout'
70
+ assert_equal Family::CANNED.description, 'Builtin Speed / Incline workout at 1 minute incriments'
71
+ assert_equal Family::PULSE.description, 'Builtin Pulse workouts'
72
+ assert_equal Family::LEARN.description, 'Built in Custom Workout'
73
+ assert_equal Family::STEP.description, 'Step Counting Workout'
74
+ assert_equal Family::DISTANCE.description, 'Reach a Target Distance'
75
+ assert_equal Family::CALORIE.description, 'Reach a Target Calorie Count'
76
+ assert_equal Family::HRSS.description, 'Heart Rate Self Select'
77
+ assert_equal Family::TRAINER.description, 'Wpl1 Macro Segment workout'
78
+ assert_equal Family::TEST.description, 'A Fitness Test'
79
+ assert_equal Family::DEMO.description, 'Wpl1 Non Macro segment workout'
80
+ end
81
+
82
+ def test_family_values_equality
83
+ assert_equal Family.values, [ Family::MANUAL, Family::CHIRP,
84
+ Family::CANNED, Family::PULSE, Family::LEARN, Family::STEP,
85
+ Family::DISTANCE, Family::CALORIE, Family::HRSS, Family::TRAINER,
86
+ Family::TEST, Family::DEMO ]
87
+ end
88
+
89
+ def test_family_value_inequality
90
+ assert_not_equal Family::MANUAL, Family::CHIRP
91
+ end
92
+
93
+ end
94
+
@@ -0,0 +1,24 @@
1
+
2
+ require "test/unit"
3
+ require "operation"
4
+
5
+ class TestOperation < Test::Unit::TestCase
6
+
7
+ def test_sanity
8
+ assert Operation
9
+ end
10
+
11
+ def test_values
12
+ assert_equal [Operation::PLUS, Operation::MINUS, Operation::TIMES,
13
+ Operation::DIVIDE], Operation.values
14
+ end
15
+
16
+ def test_operations
17
+ assert_equal 3, Operation::PLUS.evaluate(1,2)
18
+ assert_equal 6, Operation::MINUS.evaluate(8,2)
19
+ assert_equal 6, Operation::TIMES.evaluate(3,2)
20
+ assert_equal 6, Operation::DIVIDE.evaluate(12,2)
21
+ end
22
+
23
+ end
24
+
@@ -0,0 +1,19 @@
1
+
2
+ require "test/unit"
3
+ require "planet"
4
+
5
+ class TestPlanet < Test::Unit::TestCase
6
+ def test_planet
7
+ mass = Planet::EARTH.mass_of 175
8
+ assert_in_delta 66.107583, Planet::MERCURY.surface_weight(mass), 0.000001
9
+ assert_in_delta 158.374842, Planet::VENUS.surface_weight(mass) , 0.000001
10
+ assert_in_delta 175.000000, Planet::EARTH.surface_weight(mass) , 0.000001
11
+ assert_in_delta 66.279007, Planet::MARS.surface_weight(mass) , 0.000001
12
+ assert_in_delta 442.847567, Planet::JUPITER.surface_weight(mass), 0.000001
13
+ assert_in_delta 186.552719, Planet::SATURN.surface_weight(mass) , 0.000001
14
+ assert_in_delta 158.397260, Planet::URANUS.surface_weight(mass) , 0.000001
15
+ assert_in_delta 199.207413, Planet::NEPTUNE.surface_weight(mass), 0.000001
16
+ end
17
+ end
18
+
19
+
metadata CHANGED
@@ -1,46 +1,95 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: enum
3
3
  version: !ruby/object:Gem::Version
4
- hash: 25
4
+ hash: 23
5
5
  prerelease: false
6
6
  segments:
7
- - 0
8
- - 1
9
7
  - 1
10
- version: 0.1.1
8
+ - 0
9
+ - 0
10
+ version: 1.0.0
11
11
  platform: ruby
12
12
  authors:
13
- - CapnRegex
13
+ - capnregex
14
14
  autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-09-10 00:00:00 -06:00
18
+ date: 2010-09-14 00:00:00 -06:00
19
19
  default_executable:
20
- dependencies: []
21
-
22
- description: " Java like enum functionality when you need more than a unique identifier. \n"
23
- email: capnregex@gmail.org
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: rubyforge
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ hash: 7
30
+ segments:
31
+ - 2
32
+ - 0
33
+ - 4
34
+ version: 2.0.4
35
+ type: :development
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ name: hoe
39
+ prerelease: false
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ hash: 19
46
+ segments:
47
+ - 2
48
+ - 6
49
+ - 2
50
+ version: 2.6.2
51
+ type: :development
52
+ version_requirements: *id002
53
+ description: |-
54
+ A java like Enum class for ruby.
55
+
56
+ A while ago I was exploring Java, and came across the Enum class, which had
57
+ some interesting functionality, and I decided that I would like something like
58
+ it.
59
+
60
+ Conceptually if you just need a unique identifier you may be perfectly happy using a :symbol, and that would likely be a simpler way of having a controll flag. However, if you want to have a set of unique identifiers that you can address, iterate over, assign properties to, etc, then this may be something you would be interested in.
61
+ email:
62
+ - capnregex@gmail.com
24
63
  executables: []
25
64
 
26
65
  extensions: []
27
66
 
28
- extra_rdoc_files: []
29
-
67
+ extra_rdoc_files:
68
+ - History.txt
69
+ - Manifest.txt
70
+ - README.txt
30
71
  files:
31
- - README
32
- - Changelog
33
- - LICENSE
34
- - test/foo.rb
35
- - init.rb
72
+ - .autotest
73
+ - History.txt
74
+ - Manifest.txt
75
+ - README.txt
76
+ - Rakefile
36
77
  - lib/enum.rb
78
+ - test/test_enum.rb
79
+ - test/test_day.rb
80
+ - test/test_planet.rb
81
+ - test/test_operation.rb
82
+ - test/test_family.rb
83
+ - test/test_card.rb
84
+ - test/test_deck.rb
37
85
  has_rdoc: true
38
86
  homepage: http://github.com/capnregex/enum
39
87
  licenses: []
40
88
 
41
89
  post_install_message:
42
- rdoc_options: []
43
-
90
+ rdoc_options:
91
+ - --main
92
+ - README.txt
44
93
  require_paths:
45
94
  - lib
46
95
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -63,10 +112,16 @@ required_rubygems_version: !ruby/object:Gem::Requirement
63
112
  version: "0"
64
113
  requirements: []
65
114
 
66
- rubyforge_project:
115
+ rubyforge_project: enum
67
116
  rubygems_version: 1.3.7
68
117
  signing_key:
69
118
  specification_version: 3
70
- summary: java like enum functionality.
71
- test_files: []
72
-
119
+ summary: A java like Enum class for ruby
120
+ test_files:
121
+ - test/test_day.rb
122
+ - test/test_planet.rb
123
+ - test/test_operation.rb
124
+ - test/test_family.rb
125
+ - test/test_card.rb
126
+ - test/test_enum.rb
127
+ - test/test_deck.rb
data/Changelog DELETED
File without changes
data/LICENSE DELETED
File without changes
data/README DELETED
File without changes
data/init.rb DELETED
@@ -1,2 +0,0 @@
1
- # Enum
2
- require 'enum'
@@ -1,11 +0,0 @@
1
- require 'enum'
2
-
3
- class Foo < Enum
4
- FOO
5
- BAR(1,2,3)
6
- BLEEP
7
- end
8
-
9
- Foo::BUGGER(:off)
10
-
11
- puts Foo.values.inspect