enum 0.1.1 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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