case 0.1 → 0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +1 -1
- data/lib/case.rb +5 -19
- metadata +2 -2
data/Rakefile
CHANGED
data/lib/case.rb
CHANGED
@@ -35,24 +35,10 @@ class Any
|
|
35
35
|
end
|
36
36
|
end
|
37
37
|
|
38
|
-
|
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
|
54
|
-
return false unless
|
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::
|
56
|
+
# Shorthand for Case::Array.[]
|
71
57
|
def self.[](*args)
|
72
|
-
|
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.
|
7
|
-
date: 2008-01-
|
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
|