ruby-units 2.0.1 → 2.1.0
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/CHANGELOG.txt +3 -0
- data/README.md +48 -1
- data/{Rakefile.rb → Rakefile} +0 -0
- data/VERSION +1 -1
- data/lib/ruby_units/cache.rb +17 -16
- data/lib/ruby_units/configuration.rb +41 -0
- data/lib/ruby_units/date.rb +3 -3
- data/lib/ruby_units/definition.rb +22 -24
- data/lib/ruby_units/math.rb +30 -34
- data/lib/ruby_units/namespaced.rb +1 -0
- data/lib/ruby_units/string.rb +3 -4
- data/lib/ruby_units/time.rb +9 -10
- data/lib/ruby_units/unit.rb +778 -765
- data/lib/ruby_units/unit_definitions/base.rb +42 -45
- data/lib/ruby_units/unit_definitions/prefix.rb +30 -30
- data/lib/ruby_units/unit_definitions/standard.rb +138 -135
- data/lib/ruby_units/version.rb +1 -1
- data/ruby-units.gemspec +34 -27
- metadata +34 -5
|
@@ -1,103 +1,100 @@
|
|
|
1
1
|
# seed the cache
|
|
2
2
|
RubyUnits::Unit.new('1')
|
|
3
3
|
|
|
4
|
-
RubyUnits::Unit.define(
|
|
4
|
+
RubyUnits::Unit.define('meter') do |unit|
|
|
5
5
|
unit.scalar = 1
|
|
6
|
-
unit.numerator = %w
|
|
7
|
-
unit.aliases = %w
|
|
6
|
+
unit.numerator = %w(<meter>)
|
|
7
|
+
unit.aliases = %w(m meter meters metre metres)
|
|
8
8
|
unit.kind = :length
|
|
9
9
|
end
|
|
10
10
|
|
|
11
|
-
RubyUnits::Unit.define(
|
|
11
|
+
RubyUnits::Unit.define('kilogram') do |unit|
|
|
12
12
|
unit.scalar = 1
|
|
13
|
-
unit.numerator = %w
|
|
14
|
-
unit.aliases = %w
|
|
13
|
+
unit.numerator = %w(<kilogram>)
|
|
14
|
+
unit.aliases = %w(kg kilogram kilograms)
|
|
15
15
|
unit.kind = :mass
|
|
16
16
|
end
|
|
17
17
|
|
|
18
|
-
RubyUnits::Unit.define(
|
|
18
|
+
RubyUnits::Unit.define('second') do |unit|
|
|
19
19
|
unit.scalar = 1
|
|
20
|
-
unit.numerator = %w
|
|
21
|
-
unit.aliases = %w
|
|
20
|
+
unit.numerator = %w(<second>)
|
|
21
|
+
unit.aliases = %w(s sec second seconds)
|
|
22
22
|
unit.kind = :time
|
|
23
23
|
end
|
|
24
24
|
|
|
25
|
-
RubyUnits::Unit.define(
|
|
25
|
+
RubyUnits::Unit.define('mole') do |unit|
|
|
26
26
|
unit.scalar = 1
|
|
27
|
-
unit.numerator = %w
|
|
28
|
-
unit.aliases = %w
|
|
27
|
+
unit.numerator = %w(<mole>)
|
|
28
|
+
unit.aliases = %w(mol mole)
|
|
29
29
|
unit.kind = :substance
|
|
30
30
|
end
|
|
31
31
|
|
|
32
|
-
RubyUnits::Unit.define(
|
|
32
|
+
RubyUnits::Unit.define('ampere') do |unit|
|
|
33
33
|
unit.scalar = 1
|
|
34
|
-
unit.numerator = %w
|
|
35
|
-
unit.aliases = %w
|
|
34
|
+
unit.numerator = %w(<ampere>)
|
|
35
|
+
unit.aliases = %w(A ampere amperes amp amps)
|
|
36
36
|
unit.kind = :current
|
|
37
37
|
end
|
|
38
38
|
|
|
39
|
-
RubyUnits::Unit.define(
|
|
39
|
+
RubyUnits::Unit.define('radian') do |unit|
|
|
40
40
|
unit.scalar = 1
|
|
41
|
-
unit.numerator = %w
|
|
42
|
-
unit.aliases = %w
|
|
41
|
+
unit.numerator = %w(<radian>)
|
|
42
|
+
unit.aliases = %w(rad radian radians)
|
|
43
43
|
unit.kind = :angle
|
|
44
44
|
end
|
|
45
45
|
|
|
46
|
-
RubyUnits::Unit.define(
|
|
46
|
+
RubyUnits::Unit.define('kelvin') do |unit|
|
|
47
47
|
unit.scalar = 1
|
|
48
|
-
unit.numerator = %w
|
|
49
|
-
unit.aliases = %w
|
|
48
|
+
unit.numerator = %w(<kelvin>)
|
|
49
|
+
unit.aliases = %w(degK kelvin)
|
|
50
50
|
unit.kind = :temperature
|
|
51
51
|
end
|
|
52
52
|
|
|
53
|
-
RubyUnits::Unit.define(
|
|
53
|
+
RubyUnits::Unit.define('tempK') do |unit|
|
|
54
54
|
unit.scalar = 1
|
|
55
|
-
unit.numerator = %w
|
|
56
|
-
unit.aliases = %w
|
|
55
|
+
unit.numerator = %w(<tempK>)
|
|
56
|
+
unit.aliases = %w(tempK)
|
|
57
57
|
unit.kind = :temperature
|
|
58
58
|
end
|
|
59
59
|
|
|
60
|
-
RubyUnits::Unit.define(
|
|
60
|
+
RubyUnits::Unit.define('byte') do |unit|
|
|
61
61
|
unit.scalar = 1
|
|
62
|
-
unit.numerator = %w
|
|
63
|
-
unit.aliases = %w
|
|
62
|
+
unit.numerator = %w(<byte>)
|
|
63
|
+
unit.aliases = %w(B byte bytes)
|
|
64
64
|
unit.kind = :information
|
|
65
65
|
end
|
|
66
66
|
|
|
67
|
-
RubyUnits::Unit.define(
|
|
67
|
+
RubyUnits::Unit.define('dollar') do |unit|
|
|
68
68
|
unit.scalar = 1
|
|
69
|
-
unit.numerator = %w
|
|
70
|
-
unit.aliases = %w
|
|
69
|
+
unit.numerator = %w(<dollar>)
|
|
70
|
+
unit.aliases = %w(USD dollar)
|
|
71
71
|
unit.kind = :currency
|
|
72
72
|
end
|
|
73
73
|
|
|
74
|
-
RubyUnits::Unit.define(
|
|
74
|
+
RubyUnits::Unit.define('candela') do |unit|
|
|
75
75
|
unit.scalar = 1
|
|
76
|
-
unit.numerator = %w
|
|
77
|
-
unit.aliases = %w
|
|
76
|
+
unit.numerator = %w(<candela>)
|
|
77
|
+
unit.aliases = %w(cd candela)
|
|
78
78
|
unit.kind = :luminosity
|
|
79
79
|
end
|
|
80
80
|
|
|
81
|
-
RubyUnits::Unit.define(
|
|
81
|
+
RubyUnits::Unit.define('each') do |unit|
|
|
82
82
|
unit.scalar = 1
|
|
83
|
-
unit.numerator = %w
|
|
84
|
-
unit.aliases = %w
|
|
83
|
+
unit.numerator = %w(<each>)
|
|
84
|
+
unit.aliases = %w(each)
|
|
85
85
|
unit.kind = :counting
|
|
86
86
|
end
|
|
87
87
|
|
|
88
|
-
RubyUnits::Unit.define(
|
|
88
|
+
RubyUnits::Unit.define('steradian') do |unit|
|
|
89
89
|
unit.scalar = 1
|
|
90
|
-
unit.numerator = %w
|
|
91
|
-
unit.aliases = %w
|
|
90
|
+
unit.numerator = %w(<steradian>)
|
|
91
|
+
unit.aliases = %w(sr steradian steradians)
|
|
92
92
|
unit.kind = :solid_angle
|
|
93
93
|
end
|
|
94
94
|
|
|
95
|
-
RubyUnits::Unit.define(
|
|
95
|
+
RubyUnits::Unit.define('decibel') do |unit|
|
|
96
96
|
unit.scalar = 1
|
|
97
|
-
unit.numerator = %w
|
|
98
|
-
unit.aliases = %w
|
|
97
|
+
unit.numerator = %w(<decibel>)
|
|
98
|
+
unit.aliases = %w(dB decibel decibels)
|
|
99
99
|
unit.kind = :logarithmic
|
|
100
100
|
end
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
# encoding: utf-8
|
|
2
2
|
|
|
3
3
|
{
|
|
4
|
-
'googol' => [%w
|
|
5
|
-
'yobi' => [%w
|
|
6
|
-
'zebi' => [%w
|
|
7
|
-
'exbi' => [%w
|
|
8
|
-
'pebi' => [%w
|
|
9
|
-
'tebi' => [%w
|
|
10
|
-
'gibi' => [%w
|
|
11
|
-
'mebi' => [%w
|
|
12
|
-
'kibi' => [%w
|
|
13
|
-
'yotta' => [%w
|
|
14
|
-
'zetta' => [%w
|
|
15
|
-
'exa' => [%w
|
|
16
|
-
'peta' => [%w
|
|
17
|
-
'tera' => [%w
|
|
18
|
-
'giga' => [%w
|
|
19
|
-
'mega' => [%w
|
|
20
|
-
'kilo' => [%w
|
|
21
|
-
'hecto' => [%w
|
|
22
|
-
'deca' => [%w
|
|
23
|
-
'1' => [%w
|
|
24
|
-
'deci' => [%w
|
|
25
|
-
'centi' => [%w
|
|
26
|
-
'milli' => [%w
|
|
27
|
-
'micro' => [%w
|
|
28
|
-
'nano' => [%w
|
|
29
|
-
'pico' => [%w
|
|
30
|
-
'femto' => [%w
|
|
31
|
-
'atto' => [%w
|
|
32
|
-
'zepto' => [%w
|
|
33
|
-
'yocto' => [%w
|
|
4
|
+
'googol' => [%w(googol), 1e100],
|
|
5
|
+
'yobi' => [%w(Yi Yobi yobi), 2**80],
|
|
6
|
+
'zebi' => [%w(Zi Zebi zebi), 2**70],
|
|
7
|
+
'exbi' => [%w(Ei Exbi exbi), 2**60],
|
|
8
|
+
'pebi' => [%w(Pi Pebi pebi), 2**50],
|
|
9
|
+
'tebi' => [%w(Ti Tebi tebi), 2**40],
|
|
10
|
+
'gibi' => [%w(Gi Gibi gibi), 2**30],
|
|
11
|
+
'mebi' => [%w(Mi Mebi mebi), 2**20],
|
|
12
|
+
'kibi' => [%w(Ki Kibi kibi), 2**10],
|
|
13
|
+
'yotta' => [%w(Y Yotta yotta), 1e24],
|
|
14
|
+
'zetta' => [%w(Z Zetta zetta), 1e21],
|
|
15
|
+
'exa' => [%w(E Exa exa), 1e18],
|
|
16
|
+
'peta' => [%w(P Peta peta), 1e15],
|
|
17
|
+
'tera' => [%w(T Tera tera), 1e12],
|
|
18
|
+
'giga' => [%w(G Giga giga), 1e9],
|
|
19
|
+
'mega' => [%w(M Mega mega), 1e6],
|
|
20
|
+
'kilo' => [%w(k kilo), 1e3],
|
|
21
|
+
'hecto' => [%w(h Hecto hecto), 1e2],
|
|
22
|
+
'deca' => [%w(da Deca deca deka), 1e1],
|
|
23
|
+
'1' => [%w(1), 1],
|
|
24
|
+
'deci' => [%w(d Deci deci), Rational(1, 1e1)],
|
|
25
|
+
'centi' => [%w(c Centi centi), Rational(1, 1e2)],
|
|
26
|
+
'milli' => [%w(m Milli milli), Rational(1, 1e3)],
|
|
27
|
+
'micro' => [%w(u µ Micro micro mc), Rational(1, 1e6)],
|
|
28
|
+
'nano' => [%w(n Nano nano), Rational(1, 1e9)],
|
|
29
|
+
'pico' => [%w(p Pico pico), Rational(1, 1e12)],
|
|
30
|
+
'femto' => [%w(f Femto femto), Rational(1, 1e15)],
|
|
31
|
+
'atto' => [%w(a Atto atto), Rational(1, 1e18)],
|
|
32
|
+
'zepto' => [%w(z Zepto zepto), Rational(1, 1e21)],
|
|
33
|
+
'yocto' => [%w(y Yocto yocto), Rational(1, 1e24)]
|
|
34
34
|
}.each do |name, definition|
|
|
35
35
|
RubyUnits::Unit.define(name) do |unit|
|
|
36
36
|
aliases, scalar = definition
|