aadigamov_palindrome 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/aadigamov_palindrome.rb +23 -10
- data/lib/aadigamov_palindrome/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: dba9d473e753417e64869e46a3fbeb75758dd8957f938c6dfb73cb1088ef6b1d
|
4
|
+
data.tar.gz: 7698f40d03d26fa1e3066b2ba0e45032f2f4f00f8fea6ee55d5e11a01ebc39ad
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ea2f8a23d6c74bbf2b2b4065201c51a561d26078b77df0dbb6bb262f175fee1304a100c681404144b1f70e0a1d3467dbce93bc0c4e2db167e33f8579db6bbdac
|
7
|
+
data.tar.gz: 84587b9355c2ed0b96fec4f3899ab1d33e24b9389e49ae712e57142b63e972d8d4fc412207b180948d9391cb701d367412f65feafbda8486e9f05c1d0b6cf234
|
data/Gemfile.lock
CHANGED
data/lib/aadigamov_palindrome.rb
CHANGED
@@ -1,14 +1,27 @@
|
|
1
1
|
require "aadigamov_palindrome/version"
|
2
2
|
|
3
|
+
module AadigamovPalindrome
|
4
|
+
|
5
|
+
# Returns true for a palindrome, false otherwise.
|
6
|
+
def palindrome?
|
7
|
+
if processed_content.empty?
|
8
|
+
false
|
9
|
+
else
|
10
|
+
processed_content == processed_content.reverse
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
private
|
15
|
+
# Returns content for palindrome testing.
|
16
|
+
def processed_content
|
17
|
+
self.to_s.scan(/[a-zA-Z\d]/).join.downcase
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
3
21
|
class String
|
4
|
-
|
5
|
-
def palindrome?
|
6
|
-
processed_content == processed_content.reverse
|
7
|
-
end
|
8
|
-
|
9
|
-
private
|
10
|
-
# Returns content for palindrome testing.
|
11
|
-
def processed_content
|
12
|
-
self.scan(/[a-z]/i).join.downcase
|
13
|
-
end
|
22
|
+
include AadigamovPalindrome
|
14
23
|
end
|
24
|
+
|
25
|
+
class Integer
|
26
|
+
include AadigamovPalindrome
|
27
|
+
end
|