kabal 1.0.1 → 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.
- checksums.yaml +4 -4
- data/lib/kabal/languages/global/number_properities.rb +21 -0
- data/lib/kabal/languages/language.rb +5 -24
- data/lib/kabal/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1ea013a0f028d6323f4ab271f5647adf7f1742ea
|
4
|
+
data.tar.gz: 432fa5274031043a02af026dadc029724a162afd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8ff3291a1af1796313e96bc1d91bbfcf9fd859457e2d5c6a0c932584c4558dd978e0426e05b067c958b2feb801e7a3ce5739a7bd3672e7dc3991ec8bfd1ecf26
|
7
|
+
data.tar.gz: 56d0dbe59f9e225dac8cbe40253d614dab5f871f72a442484042ed6efb73ec0d99c7bb6eaf58bc1c8a5cb4d4ae451a6f57efbeb87f6134a9c79ca44e3d640d46
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module Kabal
|
2
|
+
module GlobalRules
|
3
|
+
module NumberProperities
|
4
|
+
def fractional?(number)
|
5
|
+
number % 1 != 0
|
6
|
+
end
|
7
|
+
def natural?(number)
|
8
|
+
number % 1 == 0
|
9
|
+
end
|
10
|
+
def number_is_thousands?(number)
|
11
|
+
number_order(number) < 3
|
12
|
+
end
|
13
|
+
def number_is_google?(number)
|
14
|
+
count(number) == 10 && number_order(number) == 99
|
15
|
+
end
|
16
|
+
def need_minus?(number)
|
17
|
+
number < 0
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -1,10 +1,12 @@
|
|
1
1
|
require 'kabal/languages/global/fractional_numbers'
|
2
2
|
require 'kabal/languages/global/natural_numbers'
|
3
|
+
require 'kabal/languages/global/number_properities'
|
3
4
|
|
4
5
|
module Kabal
|
5
6
|
class Language
|
6
7
|
include Kabal::GlobalRules::NaturalNumbers
|
7
8
|
include Kabal::GlobalRules::FractionalNumbers
|
9
|
+
include Kabal::GlobalRules::NumberProperities
|
8
10
|
|
9
11
|
def initialize
|
10
12
|
@names = Kabal::Config::YamlLoader.yaml_object "languages/#{lang}"
|
@@ -36,9 +38,8 @@ module Kabal
|
|
36
38
|
|
37
39
|
def error(number)
|
38
40
|
if number_is_out_of_the_range? number
|
39
|
-
|
40
|
-
|
41
|
-
if (!supports_fractional?) && (number % 1 != 0)
|
41
|
+
Kabal::Errors::NumberOutRangeError.message
|
42
|
+
elsif (!supports_fractional?) && (number % 1 != 0)
|
42
43
|
Kabal::Errors::NoSupportForFractionalNumberOnCurrentLanguages.message
|
43
44
|
end
|
44
45
|
end
|
@@ -80,22 +81,6 @@ module Kabal
|
|
80
81
|
names[:dot]
|
81
82
|
end
|
82
83
|
|
83
|
-
def fractional?(number)
|
84
|
-
number % 1 != 0
|
85
|
-
end
|
86
|
-
|
87
|
-
def natural?(number)
|
88
|
-
number % 1 == 0
|
89
|
-
end
|
90
|
-
|
91
|
-
def number_is_thousands?(number)
|
92
|
-
number_order(number) < 3
|
93
|
-
end
|
94
|
-
|
95
|
-
def number_is_google?(number)
|
96
|
-
count(number) == 10 && number_order(number) == 99
|
97
|
-
end
|
98
|
-
|
99
84
|
def number_order(number)
|
100
85
|
((number.to_s.length - 1) / 3) * 3
|
101
86
|
end
|
@@ -113,17 +98,13 @@ module Kabal
|
|
113
98
|
end
|
114
99
|
|
115
100
|
def fractional_but_no_support_fractional?(number)
|
116
|
-
number
|
101
|
+
fractional?(number) && !supports_fractional?
|
117
102
|
end
|
118
103
|
|
119
104
|
def no_supports?(number)
|
120
105
|
fractional_but_no_support_fractional?(number) || number_is_out_of_the_range?(number)
|
121
106
|
end
|
122
107
|
|
123
|
-
def need_minus?(number)
|
124
|
-
number < 0
|
125
|
-
end
|
126
|
-
|
127
108
|
def space
|
128
109
|
' '
|
129
110
|
end
|
data/lib/kabal/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kabal
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pavel Kalashnikov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-09-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -72,6 +72,7 @@ files:
|
|
72
72
|
- lib/kabal/languages/english/natural_numbers.rb
|
73
73
|
- lib/kabal/languages/global/fractional_numbers.rb
|
74
74
|
- lib/kabal/languages/global/natural_numbers.rb
|
75
|
+
- lib/kabal/languages/global/number_properities.rb
|
75
76
|
- lib/kabal/languages/language.rb
|
76
77
|
- lib/kabal/languages/russian.rb
|
77
78
|
- lib/kabal/languages/russian/declinations.rb
|