case 0.1 → 0.2

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.
Files changed (3) hide show
  1. data/Rakefile +1 -1
  2. data/lib/case.rb +5 -19
  3. metadata +2 -2
data/Rakefile CHANGED
@@ -4,7 +4,7 @@ require 'rake/rdoctask'
4
4
  require 'rake/gempackagetask'
5
5
  require 'rake/clean'
6
6
 
7
- GEM_VERSION = "0.1"
7
+ GEM_VERSION = "0.2"
8
8
 
9
9
  Rake::RDocTask.new do |task|
10
10
  task.rdoc_files.add [ 'lib/**/*.rb' ]
@@ -35,24 +35,10 @@ class Any
35
35
  end
36
36
  end
37
37
 
38
- # Pattern-matches with an Array or Tuple
39
- class Sequence
40
- class << self
41
- alias_method :[], :new
42
- end
43
-
44
- def initialize(*elements)
45
- @elements = elements
46
- end
47
-
48
- def elements
49
- @elements.dup
50
- end
51
-
38
+ class Array < ::Array
52
39
  def ===(other)
53
- return false unless Tuple === other or Array === other
54
- return false unless @elements.size == other.size
55
- @elements.zip(other) { |a, b| return false unless a === b }
40
+ return false unless ::Array === other and size == other.size
41
+ zip(other) { |a, b| return false unless a === b }
56
42
  true
57
43
  end
58
44
  end
@@ -67,9 +53,9 @@ class Predicate
67
53
  end
68
54
  end
69
55
 
70
- # Shorthand for Case::Sequence.[]
56
+ # Shorthand for Case::Array.[]
71
57
  def self.[](*args)
72
- Sequence[*args]
58
+ Array[*args]
73
59
  end
74
60
 
75
61
  end
metadata CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.8.11
3
3
  specification_version: 1
4
4
  name: case
5
5
  version: !ruby/object:Gem::Version
6
- version: "0.1"
7
- date: 2008-01-15 00:00:00 -05:00
6
+ version: "0.2"
7
+ date: 2008-01-16 00:00:00 -05:00
8
8
  summary: Pattern matching for Ruby
9
9
  require_paths:
10
10
  - lib