twisty_puzzles 0.0.28 → 0.0.29
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/twisty_puzzles/part_cycle.rb +5 -2
- data/lib/twisty_puzzles/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4a36579770d4f4a738e61f718667325433469a295d7f131f7fa3b3ea770f7917
|
4
|
+
data.tar.gz: fc9f222127a4ab7f3af88cd6fd41b5ca18005e02e531eaba4be3fbbaa5030fde
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8bfe24af1bbc9d601ef76c7838167c126a223248a87086bc516d78adcee3ab82f64545a173b3e9774bab5b40a4fce6498a21b659d4b92f45654802e251ec97d2
|
7
|
+
data.tar.gz: e8e21f651133dc55e41d099ea3c9f484ff0ad49a7d9375ce7aef27ae3eb143fa70dc24c47788bf43463bc25063ce6aa9cbe0e35a0cb94c1e5260d1dc7a257f54
|
@@ -17,16 +17,19 @@ module TwistyPuzzles
|
|
17
17
|
|
18
18
|
RAW_DATA_RESERVED = [' ', '(', ')'].freeze
|
19
19
|
|
20
|
-
def initialize(parts)
|
20
|
+
def initialize(parts, twist=0)
|
21
21
|
raise ArgumentError if parts.empty?
|
22
|
+
raise TypeError unless twist.is_a?(Integer)
|
23
|
+
raise ArgumentError if twist.negative?
|
22
24
|
|
23
25
|
check_types(parts, Part)
|
24
26
|
check_type_consistency(parts)
|
25
27
|
|
26
28
|
@parts = parts
|
29
|
+
@twist = twist
|
27
30
|
end
|
28
31
|
|
29
|
-
attr_reader :parts
|
32
|
+
attr_reader :parts, :twist
|
30
33
|
|
31
34
|
def eql?(other)
|
32
35
|
self.class.equal?(other.class) && @parts == other.parts
|