unit_measurements 2.6.0 → 2.6.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3d6c07c2a7f828f3e7ac525c7100d75310bde354f0e9bc07952b0b7436dc8a5b
4
- data.tar.gz: e6951bd9afaa36174a7491208e3e4844e59bbba19dd6b307e8cac3b297262658
3
+ metadata.gz: ee248c59c5e2a882f8d4777e9e33e45c7adcd595a407720b65f36c0c9d0dc420
4
+ data.tar.gz: ad7e62f717a032d15d1cd41faead043090d16fd648f239566184a73b413ba6d8
5
5
  SHA512:
6
- metadata.gz: d78f1b5d0e603ed08b40769a96a6172f204019c98a103cf3fb4335bf2b47be15327588e88e4b6e286e7085632adf1e08057a09b136988b71feef1742711bfb7a
7
- data.tar.gz: cfef2825c9fb04c0449abf0e04e143fa95310c87b70d8df6c0aa4d4991568510a09f6071a2c727e0fb28977d923fb37564be6de3025b914c67cb90867d248e28
6
+ metadata.gz: 6c1b028748ae14888b1041dfbe640f00bbd42d4e5498d63298298bbff52c5cc8ccb0eb568ba994dd2a5a43fa843bc4cf5c9ff282ce33b6a2b2167ee7693fc98e
7
+ data.tar.gz: 3e4685f5ea0665b95931580a5a321bdadb28374c90ccb35b57dff74e635cf5f8b6596dbeff3a924a4ef122e82dd1687e3fbc952325f2465667c92296a4413672
data/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ ## [2.6.1](https://github.com/shivam091/unit_measurements/compare/v2.6.0...v2.6.1) - 2023-08-24
2
+
3
+ ### What's changed
4
+
5
+ - Replaced `Symbol` by `String` in unit names and symbols.
6
+
7
+ ----------
8
+
1
9
  ## [2.6.0](https://github.com/shivam091/unit_measurements/compare/v2.5.0...v2.6.0) - 2023-08-24
2
10
 
3
11
  ### What's new
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- unit_measurements (2.6.0)
4
+ unit_measurements (2.6.1)
5
5
  activesupport (~> 7.0)
6
6
 
7
7
  GEM
data/README.md CHANGED
@@ -65,7 +65,7 @@ but rather with the unit group classes viz., `UnitMeasurements::Weight`, `UnitMe
65
65
  **Initialize a measurement:**
66
66
 
67
67
  ```ruby
68
- UnitMeasurements::Weight.new(1, :kg)
68
+ UnitMeasurements::Weight.new(1, "kg")
69
69
  #=> 1 kg
70
70
  ```
71
71
 
@@ -78,21 +78,21 @@ or `#convert_to!` (aliased as `#to!`) methods.
78
78
  You can use `#convert_to` as:
79
79
 
80
80
  ```ruby
81
- UnitMeasurements::Weight.new(1, :kg).convert_to(:g)
81
+ UnitMeasurements::Weight.new(1, "kg").convert_to("g")
82
82
  #=> 1000.0 g
83
83
  ```
84
84
 
85
85
  If you want to modify measurement object itself, you can use `#convert_to!` method as:
86
86
 
87
87
  ```ruby
88
- UnitMeasurements::Weight.new(1, :kg).convert_to!(:g)
88
+ UnitMeasurements::Weight.new(1, "kg").convert_to!("g")
89
89
  #=> 1000.0 g
90
90
  ```
91
91
 
92
92
  You can also chain call of `#convert_to` and `#convert_to!` methods as:
93
93
 
94
94
  ```ruby
95
- UnitMeasurements::Weight.new(1, :kg).convert_to(:g).convert_to(:t).convert_to!(:q)
95
+ UnitMeasurements::Weight.new(1, "kg").convert_to("g").convert_to("t").convert_to!("q")
96
96
  #=> 0.01 q
97
97
  ```
98
98
 
@@ -117,11 +117,11 @@ UnitMeasurements::Weight.parse("1 kg in g")
117
117
  **Parse rational numbers, source unit, and (or) target unit:**
118
118
 
119
119
  ```ruby
120
- UnitMeasurements::Weight.new(Rational(2, 3), :kg).convert_to(:g)
120
+ UnitMeasurements::Weight.new(Rational(2, 3), "kg").convert_to("g")
121
121
  #=> 666.666666666667 g
122
- UnitMeasurements::Weight.new("2/3", :kg).convert_to(:g)
122
+ UnitMeasurements::Weight.new("2/3", "kg").convert_to("g")
123
123
  #=> 666.666666666667 g
124
- UnitMeasurements::Weight.parse("2/3 kg").convert_to(:g)
124
+ UnitMeasurements::Weight.parse("2/3 kg").convert_to("g")
125
125
  #=> 666.666666666667 g
126
126
  UnitMeasurements::Weight.parse("2/3 kg to g")
127
127
  #=> 666.666666666667 g
@@ -130,11 +130,11 @@ UnitMeasurements::Weight.parse("2/3 kg to g")
130
130
  **Parse complex numbers, source unit, and (or) target unit:**
131
131
 
132
132
  ```ruby
133
- UnitMeasurements::Weight.new(Complex(2, 3), :kg).convert_to(:g)
133
+ UnitMeasurements::Weight.new(Complex(2, 3), "kg").convert_to("g")
134
134
  #=> 2000.0+3000.0i g
135
- UnitMeasurements::Weight.new("2+3i", :kg).convert_to(:g)
135
+ UnitMeasurements::Weight.new("2+3i", "kg").convert_to("g")
136
136
  #=> 2000.0+3000.0i g
137
- UnitMeasurements::Weight.parse("2+3i kg").convert_to(:g)
137
+ UnitMeasurements::Weight.parse("2+3i kg").convert_to("g")
138
138
  #=> 2000.0+3000.0i g
139
139
  UnitMeasurements::Weight.parse("2+3i kg to g")
140
140
  #=> 2000.0+3000.0i g
@@ -143,11 +143,11 @@ UnitMeasurements::Weight.parse("2+3i kg to g")
143
143
  **Parse scientific numbers, source unit, and (or) target unit:**
144
144
 
145
145
  ```ruby
146
- UnitMeasurements::Weight.new(BigDecimal(2), :kg).convert_to(:g)
146
+ UnitMeasurements::Weight.new(BigDecimal(2), "kg").convert_to("g")
147
147
  #=> 2000.0 g
148
- UnitMeasurements::Weight.new(0.2e1, :kg).convert_to(:g)
148
+ UnitMeasurements::Weight.new(0.2e1, "kg").convert_to("g")
149
149
  #=> 2000.0 g
150
- UnitMeasurements::Weight.parse("0.2e1 kg").convert_to(:g)
150
+ UnitMeasurements::Weight.parse("0.2e1 kg").convert_to("g")
151
151
  #=> 2000.0 g
152
152
  UnitMeasurements::Weight.parse("0.2e1 kg to g")
153
153
  #=> 2000.0 g
@@ -156,9 +156,9 @@ UnitMeasurements::Weight.parse("0.2e1 kg to g")
156
156
  **Parse ratios, source unit, and (or) target unit:**
157
157
 
158
158
  ```ruby
159
- UnitMeasurements::Weight.new("1:2", :kg).convert_to(:g)
159
+ UnitMeasurements::Weight.new("1:2", "kg").convert_to("g")
160
160
  #=> 500.0 g
161
- UnitMeasurements::Weight.parse("1:2 kg").convert_to(:g)
161
+ UnitMeasurements::Weight.parse("1:2 kg").convert_to("g")
162
162
  #=> 500.0 g
163
163
  UnitMeasurements::Weight.parse("1:2 kg to g")
164
164
  #=> 500.0 g
@@ -167,15 +167,15 @@ UnitMeasurements::Weight.parse("1:2 kg to g")
167
167
  **Parse fractional notations, source unit, and (or) target unit:**
168
168
 
169
169
  ```ruby
170
- UnitMeasurements::Weight.new("1/2", :kg).convert_to(:g)
170
+ UnitMeasurements::Weight.new("1/2", "kg").convert_to("g")
171
171
  #=> 500.0 g
172
- UnitMeasurements::Weight.parse("1/2 kg").convert_to(:g)
172
+ UnitMeasurements::Weight.parse("1/2 kg").convert_to("g")
173
173
  #=> 500.0 g
174
174
  UnitMeasurements::Weight.parse("1/2 kg to g")
175
175
  #=> 500.0 g
176
- UnitMeasurements::Weight.new("½", :kg).convert_to(:g)
176
+ UnitMeasurements::Weight.new("½", "kg").convert_to("g")
177
177
  #=> 500.0 g
178
- UnitMeasurements::Weight.parse("½ kg").convert_to(:g)
178
+ UnitMeasurements::Weight.parse("½ kg").convert_to("g")
179
179
  #=> 500.0 g
180
180
  UnitMeasurements::Weight.parse("½ kg to g")
181
181
  #=> 500.0 g
@@ -184,15 +184,15 @@ UnitMeasurements::Weight.parse("½ kg to g")
184
184
  **Parse mixed fractional notations, source unit, and (or) target unit:**
185
185
 
186
186
  ```ruby
187
- UnitMeasurements::Weight.new("2 1/2", :kg).convert_to(:g)
187
+ UnitMeasurements::Weight.new("2 1/2", "kg").convert_to("g")
188
188
  #=> 2500.0 g
189
- UnitMeasurements::Weight.parse("2 1/2 kg").convert_to(:g)
189
+ UnitMeasurements::Weight.parse("2 1/2 kg").convert_to("g")
190
190
  #=> 2500.0 g
191
191
  UnitMeasurements::Weight.parse("2 1/2 kg to g")
192
192
  #=> 2500.0 g
193
- UnitMeasurements::Weight.new("2 ½", :kg).convert_to(:g)
193
+ UnitMeasurements::Weight.new("2 ½", "kg").convert_to("g")
194
194
  #=> 2500.0 g
195
- UnitMeasurements::Weight.parse("2 ½ kg").convert_to(:g)
195
+ UnitMeasurements::Weight.parse("2 ½ kg").convert_to("g")
196
196
  #=> 2500.0 g
197
197
  UnitMeasurements::Weight.parse("2 ½ kg to g")
198
198
  #=> 2500.0 g
@@ -203,15 +203,15 @@ Supported special characters for fractional notations are `¼`, `½`, `¾`, `⅓
203
203
  **Parse exponents, source unit, and (or) target unit:**
204
204
 
205
205
  ```ruby
206
- UnitMeasurements::Weight.new("2e+2", :kg).convert_to(:g)
206
+ UnitMeasurements::Weight.new("2e+2", "kg").convert_to("g")
207
207
  #=> 200000.0 g
208
- UnitMeasurements::Weight.parse("2e² kg").convert_to(:g)
208
+ UnitMeasurements::Weight.parse("2e² kg").convert_to("g")
209
209
  #=> 200000.0 g
210
210
  UnitMeasurements::Weight.parse("2e+2 kg to g")
211
211
  #=> 200000.0 g
212
- UnitMeasurements::Weight.new("2e⁺²", :kg).convert_to(:g)
212
+ UnitMeasurements::Weight.new("2e⁺²", "kg").convert_to("g")
213
213
  #=> 200000.0 g
214
- UnitMeasurements::Weight.parse("2e⁺2 kg").convert_to(:g)
214
+ UnitMeasurements::Weight.parse("2e⁺2 kg").convert_to("g")
215
215
  #=> 200000.0 g
216
216
  UnitMeasurements::Weight.parse("2e⁻² kg to g")
217
217
  #=> 20.0 g
@@ -225,18 +225,18 @@ If you want to format measurement to certain format, you can use `#format` metho
225
225
  If format is not specified, it defaults to `"%.2<value>f %<unit>s"`.
226
226
 
227
227
  ```ruby
228
- UnitMeasurements::Weight.parse("2 kg").to(:st).format
228
+ UnitMeasurements::Weight.parse("2 kg").to("st").format
229
229
  #=> "0.31 st"
230
- UnitMeasurements::Weight.parse("2 kg").to(:st).format("%.4<quantity>f %<unit>s")
230
+ UnitMeasurements::Weight.parse("2 kg").to("st").format("%.4<quantity>f %<unit>s")
231
231
  #=> "0.3149 st"
232
- UnitMeasurements::Weight.parse("2 kg").to(:st).format("%.4<quantity>f")
232
+ UnitMeasurements::Weight.parse("2 kg").to("st").format("%.4<quantity>f")
233
233
  #=> "0.3149"
234
234
  ```
235
235
 
236
236
  **Extract the unit and the quantity from measurement:**
237
237
 
238
238
  ```ruby
239
- weight = UnitMeasurements::Weight.new(1, :kg)
239
+ weight = UnitMeasurements::Weight.new(1, "kg")
240
240
  weight.quantity
241
241
  #=> 1
242
242
  weight.unit
@@ -271,35 +271,35 @@ the unit group. `#unit_for!` method returns error if a unit is not present in th
271
271
  unit group.
272
272
 
273
273
  ```ruby
274
- UnitMeasurements::Weight.unit_for(:g)
274
+ UnitMeasurements::Weight.unit_for("g")
275
275
  #=> #<UnitMeasurements::Unit: g (gram, gramme, grammes, grams)>
276
- UnitMeasurements::Weight.unit_for(:z)
276
+ UnitMeasurements::Weight.unit_for("z")
277
277
  #=> nil
278
- UnitMeasurements::Weight.unit_for!(:g)
278
+ UnitMeasurements::Weight.unit_for!("g")
279
279
  #=> #<UnitMeasurements::Unit: g (gram, gramme, grammes, grams)>
280
- UnitMeasurements::Weight.unit_for!(:z)
280
+ UnitMeasurements::Weight.unit_for!("z")
281
281
  #=> Invalid unit: 'z'. (UnitMeasurements::UnitError)
282
282
  ```
283
283
 
284
284
  **Finding whether the unit is defined within the unit group:**
285
285
 
286
286
  ```ruby
287
- UnitMeasurements::Weight.defined?(:g)
287
+ UnitMeasurements::Weight.defined?("g")
288
288
  #=> true
289
- UnitMeasurements::Weight.defined?(:kg)
289
+ UnitMeasurements::Weight.defined?("kg")
290
290
  #=> true
291
- UnitMeasurements::Weight.defined?(:gramme)
291
+ UnitMeasurements::Weight.defined?("gramme")
292
292
  #=> false
293
293
  ```
294
294
 
295
295
  **Check if the unit is a valid unit or alias within the unit group:**
296
296
 
297
297
  ```ruby
298
- UnitMeasurements::Weight.unit_or_alias?(:g)
298
+ UnitMeasurements::Weight.unit_or_alias?("g")
299
299
  #=> true
300
- UnitMeasurements::Weight.unit_or_alias?(:kg)
300
+ UnitMeasurements::Weight.unit_or_alias?("kg")
301
301
  #=> true
302
- UnitMeasurements::Weight.unit_or_alias?(:gramme)
302
+ UnitMeasurements::Weight.unit_or_alias?("gramme")
303
303
  #=> true
304
304
  ```
305
305
 
@@ -319,9 +319,9 @@ UnitMeasurements::Weight.parse("1 kg") <= UnitMeasurements::Weight.parse("0.5 kg
319
319
  #=> false
320
320
  UnitMeasurements::Weight.parse("1 kg") >= UnitMeasurements::Weight.parse("0.5 kg")
321
321
  #=> true
322
- UnitMeasurements::Length.new(1, :ft).between?(UnitMeasurements::Length.new(12, :in), UnitMeasurements::Length.new(24, :in))
322
+ UnitMeasurements::Length.new(1, "ft").between?(UnitMeasurements::Length.new(12, "in"), UnitMeasurements::Length.new(24, "in"))
323
323
  #=> true
324
- UnitMeasurements::Length.new(1, :ft).clamp(UnitMeasurements::Length.new(13, :in), UnitMeasurements::Length.new(24, :in))
324
+ UnitMeasurements::Length.new(1, "ft").clamp(UnitMeasurements::Length.new(13, "in"), UnitMeasurements::Length.new(24, "in"))
325
325
  #=> 13 in
326
326
  ```
327
327
 
@@ -338,13 +338,13 @@ measurement by either other compatible measurement or number.
338
338
  4. `#/` - Divides the measurement quantity by other measurement quantity or number.
339
339
 
340
340
  ```ruby
341
- UnitMeasurements::Weight.new(1, :kg) + UnitMeasurements::Weight.new(1, :g)
341
+ UnitMeasurements::Weight.new(1, "kg") + UnitMeasurements::Weight.new(1, "g")
342
342
  #=> 1.001 kg
343
- UnitMeasurements::Weight.new(2, :kg) - 1
343
+ UnitMeasurements::Weight.new(2, "kg") - 1
344
344
  #=> 1 kg
345
- UnitMeasurements::Weight.new(2, :kg) * 2
345
+ UnitMeasurements::Weight.new(2, "kg") * 2
346
346
  #=> 4 kg
347
- UnitMeasurements::Weight.new(4, :kg) / UnitMeasurements::Weight.new(2, :kg)
347
+ UnitMeasurements::Weight.new(4, "kg") / UnitMeasurements::Weight.new(2, "kg")
348
348
  #=> 2 kg
349
349
  ```
350
350
 
@@ -359,13 +359,13 @@ You can perform mathematical operations on the measurements.
359
359
  4. `#ceil` - Rounds quantity of the measurement to next higher integer.
360
360
 
361
361
  ```ruby
362
- UnitMeasurements::Weight.new(1, :g).convert_to(:st).round(4)
362
+ UnitMeasurements::Weight.new(1, "g").convert_to("st").round(4)
363
363
  #=> 0.0002 st
364
- UnitMeasurements::Length.new(-17.625, :m).abs
364
+ UnitMeasurements::Length.new(-17.625, "m").abs
365
365
  #=> 17.625 m
366
- UnitMeasurements::Length.new(17.625, :m).floor
366
+ UnitMeasurements::Length.new(17.625, "m").floor
367
367
  #=> 17 m
368
- UnitMeasurements::Length.new(17.625, :m).ceil
368
+ UnitMeasurements::Length.new(17.625, "m").ceil
369
369
  #=> 18 m
370
370
  ```
371
371
 
@@ -375,15 +375,15 @@ You can convert measurement quantity directly to other numeric types viz.
375
375
  `Integer`, `BigDecimal`, `Rational`, `Complex`, and `Float`.
376
376
 
377
377
  ```ruby
378
- UnitMeasurements::Weight.new(2.25567, :kg).to_i
378
+ UnitMeasurements::Weight.new(2.25567, "kg").to_i
379
379
  #=> 2 kg
380
- UnitMeasurements::Weight.new(2.25567, :kg).to_f
380
+ UnitMeasurements::Weight.new(2.25567, "kg").to_f
381
381
  #=> 2.25567 kg
382
- UnitMeasurements::Weight.new(2.25567, :kg).to_r
382
+ UnitMeasurements::Weight.new(2.25567, "kg").to_r
383
383
  #=> 225567/100000 kg
384
- UnitMeasurements::Weight.new(2.25567, :kg).to_d
384
+ UnitMeasurements::Weight.new(2.25567, "kg").to_d
385
385
  #=> 2.25567 kg
386
- UnitMeasurements::Weight.new(2.25567, :kg).to_c
386
+ UnitMeasurements::Weight.new(2.25567, "kg").to_c
387
387
  #=> 2.25567+0i kg
388
388
  ```
389
389
 
@@ -474,18 +474,18 @@ If you build unit using `base` method, base unit automatically gets set for the
474
474
  ```ruby
475
475
  UnitMeasurements::Time = UnitMeasurements.build do
476
476
  # Add a base unit to the group.
477
- base :s, aliases: [:second, :seconds]
477
+ base "s", aliases: ["second", "seconds"]
478
478
 
479
479
  # Add other units to the group, along with their conversion multipliers against
480
480
  # base unit.
481
- unit :min, value: 60.0, aliases: [:minute, :minutes]
481
+ unit "min", value: 60.0, aliases: ["minute", "minutes"]
482
482
 
483
483
  # You can also specify conversion string if it's converted against a unit other
484
484
  # than the unit group's base unit.
485
- unit :h, value: "60 min", aliases: [:hour, :hours]
485
+ unit "h", value: "60 min", aliases: ["hour", "hours"]
486
486
 
487
487
  # You can also specify unit value as an array.
488
- unit :d, value: [24, :h], aliases: [:day, :days]
488
+ unit "d", value: [24, "h"], aliases: ["day", "days"]
489
489
  end
490
490
  ```
491
491
 
@@ -495,9 +495,9 @@ If you build unit using `si_unit`, Base unit is automatically added to the group
495
495
  ```ruby
496
496
  UnitMeasurements::Time = UnitMeasurements.build do
497
497
  # Add a SI unit to the unit group
498
- si_unit :s, aliases: [:second, :seconds]
498
+ si_unit "s", aliases: ["second", "seconds"]
499
499
 
500
- unit :min, value: "60 s", aliases: [:minute, :minutes]
500
+ unit "min", value: "60 s", aliases: ["minute", "minutes"]
501
501
  end
502
502
  ```
503
503
 
@@ -9,7 +9,7 @@ module UnitMeasurements
9
9
  # @param [Numeric or Measurement] other
10
10
  #
11
11
  # @example
12
- # UnitMeasurements::Weight.new(1, :kg) + UnitMeasurements::Weight.new(1, :g)
12
+ # UnitMeasurements::Weight.new(1, "kg") + UnitMeasurements::Weight.new(1, "g")
13
13
  # => 1.001 kg
14
14
  #
15
15
  # @return [Measurement]
@@ -22,7 +22,7 @@ module UnitMeasurements
22
22
  # @param [Numeric or Measurement] other
23
23
  #
24
24
  # @example
25
- # UnitMeasurements::Weight.new(2, :kg) - 1
25
+ # UnitMeasurements::Weight.new(2, "kg") - 1
26
26
  # => 1 kg
27
27
  #
28
28
  # @return [Measurement]
@@ -35,7 +35,7 @@ module UnitMeasurements
35
35
  # @param [Numeric or Measurement] other
36
36
  #
37
37
  # @example
38
- # UnitMeasurements::Weight.new(2, :kg) * 2
38
+ # UnitMeasurements::Weight.new(2, "kg") * 2
39
39
  # => 4 kg
40
40
  #
41
41
  # @return [Measurement]
@@ -48,7 +48,7 @@ module UnitMeasurements
48
48
  # @param [Numeric or Measurement] other
49
49
  #
50
50
  # @example
51
- # UnitMeasurements::Weight.new(4, :kg) / UnitMeasurements::Weight.new(2, :kg)
51
+ # UnitMeasurements::Weight.new(4, "kg") / UnitMeasurements::Weight.new(2, "kg")
52
52
  # => 2 kg
53
53
  #
54
54
  # @return [Measurement]
@@ -7,7 +7,7 @@ module UnitMeasurements
7
7
  # Converts quantity of the measurement to +Integer+.
8
8
  #
9
9
  # @example
10
- # UnitMeasurements::Weight.new(2.25567, :kg).to_i
10
+ # UnitMeasurements::Weight.new(2.25567, "kg").to_i
11
11
  # => 2 kg
12
12
  #
13
13
  # @return [Measurement]
@@ -18,7 +18,7 @@ module UnitMeasurements
18
18
  # Converts quantity of the measurement to +Float+.
19
19
  #
20
20
  # @example
21
- # UnitMeasurements::Weight.new(2.25567, :kg).to_f
21
+ # UnitMeasurements::Weight.new(2.25567, "kg").to_f
22
22
  # => 2.25567 kg
23
23
  #
24
24
  # @return [Measurement]
@@ -29,7 +29,7 @@ module UnitMeasurements
29
29
  # Converts quantity of the measurement to +Rational+.
30
30
  #
31
31
  # @example
32
- # UnitMeasurements::Weight.new(2.25567, :kg).to_r
32
+ # UnitMeasurements::Weight.new(2.25567, "kg").to_r
33
33
  # => 225567/100000 kg
34
34
  #
35
35
  # @return [Measurement]
@@ -40,7 +40,7 @@ module UnitMeasurements
40
40
  # Converts quantity of the measurement to +Complex+.
41
41
  #
42
42
  # @example
43
- # UnitMeasurements::Weight.new(2.25567, :kg).to_c
43
+ # UnitMeasurements::Weight.new(2.25567, "kg").to_c
44
44
  # => 2.25567+0i kg
45
45
  #
46
46
  # @return [Measurement]
@@ -51,7 +51,7 @@ module UnitMeasurements
51
51
  # Converts quantity of the measurement to +BigDecimal+.
52
52
  #
53
53
  # @example
54
- # UnitMeasurements::Weight.new(2.25567, :kg).to_d
54
+ # UnitMeasurements::Weight.new(2.25567, "kg").to_d
55
55
  # => 2.25567 kg
56
56
  #
57
57
  # @return [Measurement]
@@ -12,9 +12,9 @@ module UnitMeasurements
12
12
  # formatting the measurement
13
13
  #
14
14
  # @example
15
- # UnitMeasurements::Weight.parse("2 kg").to(:st).format
15
+ # UnitMeasurements::Weight.parse("2 kg").to("st").format
16
16
  # => "0.31 st"
17
- # UnitMeasurements::Weight.parse("2 kg").to(:st).format("%.4<quantity>f %<unit>s")
17
+ # UnitMeasurements::Weight.parse("2 kg").to("st").format("%.4<quantity>f %<unit>s")
18
18
  # => "0.3149 st"
19
19
  #
20
20
  # @param [String] format
@@ -8,7 +8,7 @@ module UnitMeasurements
8
8
  # quantity is rounded to `Integer`.
9
9
  #
10
10
  # @example
11
- # UnitMeasurements::Weight.new(1, :g).convert_to(:st).round(4)
11
+ # UnitMeasurements::Weight.new(1, "g").convert_to("st").round(4)
12
12
  # => 0.0002 st
13
13
  #
14
14
  # @param [Integer] ndigits
@@ -21,7 +21,7 @@ module UnitMeasurements
21
21
  # Returns absolute value of the measurement quantity.
22
22
  #
23
23
  # @example
24
- # UnitMeasurements::Length.new(-17.625, :m).abs
24
+ # UnitMeasurements::Length.new(-17.625, "m").abs
25
25
  # => 17.625 m
26
26
  #
27
27
  # @return [Measurement]
@@ -32,7 +32,7 @@ module UnitMeasurements
32
32
  # Rounds quantity of the measurement to next lower integer.
33
33
  #
34
34
  # @example
35
- # UnitMeasurements::Length.new(17.625, :m).floor
35
+ # UnitMeasurements::Length.new(17.625, "m").floor
36
36
  # => 17 m
37
37
  #
38
38
  # @return [Measurement]
@@ -43,7 +43,7 @@ module UnitMeasurements
43
43
  # Rounds quantity of the measurement to next higher integer.
44
44
  #
45
45
  # @example
46
- # UnitMeasurements::Length.new(17.625, :m).ceil
46
+ # UnitMeasurements::Length.new(17.625, "m").ceil
47
47
  # => 18 m
48
48
  #
49
49
  # @return [Measurement]
@@ -3,7 +3,7 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  UnitMeasurements::AmountOfSubstance = UnitMeasurements.build do
6
- si_unit :mol, aliases: [:mole, :moles]
6
+ si_unit "mol", aliases: ["mole", "moles"]
7
7
 
8
- unit :NA, value: "1.6605389210322e-24 mol", aliases: [:"avogadro constant"]
8
+ unit "NA", value: "1.6605389210322e-24 mol", aliases: ["avogadro constant"]
9
9
  end
@@ -3,11 +3,11 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  UnitMeasurements::Area = UnitMeasurements.build do
6
- base :m², aliases: [:"m^2", :"sq m", :"square meter", :"square meters", :"square metre", :"square metres"]
6
+ base "m²", aliases: ["m^2", "sq m", "square meter", "square meters", "square metre", "square metres"]
7
7
 
8
- unit :km², value: "1e+6 m²", aliases: [:"km^2", :"sq km", :"square kilometer", :"square kilometers", :"square kilometre", :"square kilometres"]
9
- unit :in², value: "0.00064516 m²", aliases: [:"in^2", :"sq in", :"square inch", :"square inches"]
10
- unit :ft², value: "144 in²", aliases: [:"ft^2", :"sq ft", :"square foot", :"square feet"]
11
- unit :yd², value: "9 ft²", aliases: [:"yd^2", :"sq yd", :"square yard", :"square yards"]
12
- unit :mi², value: "3097600 yd²", aliases: [:"mi^2", :"sq mi", :"square mile", :"square miles"]
8
+ unit "km²", value: "1e+6 m²", aliases: ["km^2", "sq km", "square kilometer", "square kilometers", "square kilometre", "square kilometres"]
9
+ unit "in²", value: "0.00064516 m²", aliases: ["in^2", "sq in", "square inch", "square inches"]
10
+ unit "ft²", value: "144 in²", aliases: ["ft^2", "sq ft", "square foot", "square feet"]
11
+ unit "yd²", value: "9 ft²", aliases: ["yd^2", "sq yd", "square yard", "square yards"]
12
+ unit "mi²", value: "3097600 yd²", aliases: ["mi^2", "sq mi", "square mile", "square miles"]
13
13
  end
@@ -3,11 +3,11 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  UnitMeasurements::Density = UnitMeasurements.build do
6
- base :"g/m³", aliases: [:"g/m^3", :"g·m⁻³", :"gram per cubic meter", :"grams per cubic meter", :"gramme per cubic metre", :"grammes per cubic metre"]
6
+ base "g/m³", aliases: ["g/m^3", "g·m⁻³", "gram per cubic meter", "grams per cubic meter", "gramme per cubic metre", "grammes per cubic metre"]
7
7
 
8
- unit :"g/l", value: "1 kg/m³", aliases: [:"g·l⁻¹", :"gram per liter", :"grams per liter", :"gramme per litre", :"grammes per litre"]
9
- unit :"g/ml", value: "1000 g/l", aliases: [:"g·ml⁻¹", :"gram per milliliter", :"grams per milliliter", :"gramme per millilitre", :"grammes per millilitre"]
8
+ unit "g/l", value: "1 kg/m³", aliases: ["g·l⁻¹", "gram per liter", "grams per liter", "gramme per litre", "grammes per litre"]
9
+ unit "g/ml", value: "1000 g/l", aliases: ["g·ml⁻¹", "gram per milliliter", "grams per milliliter", "gramme per millilitre", "grammes per millilitre"]
10
10
 
11
- unit :"kg/m³", value: "1000 g/m³", aliases: [:"kg/m^3", :"kg·m⁻³", :"kilogram per cubic meter", :"kilograms per cubic meter", :"kilogramme per cubic metre", :"kilogrammes per cubic metre"]
12
- unit :"kg/l", value: "1e+6 g/m³", aliases: [:"kg·l⁻¹", :"kilogram per liter", :"kilograms per liter", :"kilogramme per litre", :"kilogrammes per litre"]
11
+ unit "kg/m³", value: "1000 g/m³", aliases: ["kg/m^3", "kg·m⁻³", "kilogram per cubic meter", "kilograms per cubic meter", "kilogramme per cubic metre", "kilogrammes per cubic metre"]
12
+ unit "kg/l", value: "1e+6 g/m³", aliases: ["kg·l⁻¹", "kilogram per liter", "kilograms per liter", "kilogramme per litre", "kilogrammes per litre"]
13
13
  end
@@ -3,9 +3,9 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  UnitMeasurements::ElectricCurrent = UnitMeasurements.build do
6
- si_unit :A, aliases: [:amp, :ampere, :amperes]
6
+ si_unit "A", aliases: ["amp", "ampere", "amperes"]
7
7
 
8
- unit :abA, value: "10 A", aliases: [:abampere, :abamperes]
9
- unit :Bi, value: "10 A", aliases: [:biot, :biots]
10
- unit :statA, value: "3.33564e-10 A", aliases: [:statampere, :statamperes]
8
+ unit "abA", value: "10 A", aliases: ["abampere", "abamperes"]
9
+ unit "Bi", value: "10 A", aliases: ["biot", "biots"]
10
+ unit "statA", value: "3.33564e-10 A", aliases: ["statampere", "statamperes"]
11
11
  end
@@ -3,12 +3,12 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  UnitMeasurements::Force = UnitMeasurements.build do
6
- si_unit :N, aliases: [:newton, :newtons] # kg·m·s⁻²
6
+ si_unit "N", aliases: ["newton", "newtons"] # kg·m·s⁻²
7
7
 
8
- unit :tf, value: "8896.443230521 N", aliases: [:"tonne-force"]
9
- unit :dyn, value: "1e-5 N", aliases: [:dyne, :dynes]
10
- unit :kgf, value: "9.80665 N", aliases: [:"kilogram-force", :"kilogramme-force"]
11
- unit :ozf, value: "0.27801385095378125 N", aliases: [:"ounce-force"]
12
- unit :lbf, value: "4.4482216152605 N", aliases: [:"pound-force"]
13
- unit :pdl, value: "0.138254954376 N", aliases: [:poundal, :poundals]
8
+ unit "tf", value: "8896.443230521 N", aliases: ["tonne-force"]
9
+ unit "dyn", value: "1e-5 N", aliases: ["dyne", "dynes"]
10
+ unit "kgf", value: "9.80665 N", aliases: ["kilogram-force", "kilogramme-force"]
11
+ unit "ozf", value: "0.27801385095378125 N", aliases: ["ounce-force"]
12
+ unit "lbf", value: "4.4482216152605 N", aliases: ["pound-force"]
13
+ unit "pdl", value: "0.138254954376 N", aliases: ["poundal", "poundals"]
14
14
  end
@@ -3,10 +3,10 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  UnitMeasurements::Length = UnitMeasurements.build do
6
- si_unit :m, aliases: [:meter, :metre, :meters, :metres]
6
+ si_unit "m", aliases: ["meter", "metre", "meters", "metres"]
7
7
 
8
- unit :in, value: "25.4 mm", aliases: [:'"', :inch, :inches]
9
- unit :ft, value: "12 in", aliases: [:"'", :foot, :feet]
10
- unit :yd, value: "3 ft", aliases: [:yard, :yards]
11
- unit :mi, value: "1760 yd", aliases: [:mile, :miles]
8
+ unit "in", value: "25.4 mm", aliases: ['"', "inch", "inches"]
9
+ unit "ft", value: "12 in", aliases: ["'", "foot", "feet"]
10
+ unit "yd", value: "3 ft", aliases: ["yard", "yards"]
11
+ unit "mi", value: "1760 yd", aliases: ["mile", "miles"]
12
12
  end
@@ -3,7 +3,7 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  UnitMeasurements::LuminousIntensity = UnitMeasurements.build do
6
- si_unit :cd, aliases: [:candela, :candelas]
6
+ si_unit "cd", aliases: ["candela", "candelas"]
7
7
 
8
- unit :hk, value: "0.92 cd", aliases: [:hefnerkerze]
8
+ unit "hk", value: "0.92 cd", aliases: ["hefnerkerze"]
9
9
  end
@@ -3,16 +3,16 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  UnitMeasurements::PlaneAngle = UnitMeasurements.build do
6
- si_unit :rad, aliases: [:radian, :radians]
6
+ si_unit "rad", aliases: ["radian", "radians"]
7
7
 
8
- unit :deg, value: [(Math::PI / 180), :rad], aliases: [:°, :degree, :degrees] # (π / 180) rad
9
- unit :gon, value: [(Math::PI / 200), :rad], aliases: [:ᵍ, :grad, :gradian, :gradians] # (π / 200) rad
10
- unit :cir, value: "360 deg", aliases: [:circle, :circles] # (2 * π) rad
11
- unit :mil, value: "1/6400 cir", aliases: [:mils] # ((2 * π) / 6400) rad
12
- unit :rev, value: "1 cir", aliases: [:revolution, :revolutions] # (2 * π) rad
8
+ unit "deg", value: [(Math::PI / 180), "rad"], aliases: ["°", "degree", "degrees"] # (π / 180) rad
9
+ unit "gon", value: [(Math::PI / 200), "rad"], aliases: ["ᵍ", "grad", "gradian", "gradians"] # (π / 200) rad
10
+ unit "cir", value: "360 deg", aliases: ["circle", "circles"] # (2 * π) rad
11
+ unit "mil", value: "1/6400 cir", aliases: ["mils"] # ((2 * π) / 6400) rad
12
+ unit "rev", value: "1 cir", aliases: ["revolution", "revolutions"] # (2 * π) rad
13
13
 
14
- unit :brad, value: [(Math::PI / 128), :rad], aliases: [:b°, :bdeg, :"binary degree", :"binary radian", :"binary degrees", :"binary radians"] # (π / 128) rad
14
+ unit "brad", value: [(Math::PI / 128), "rad"], aliases: ["b°", "bdeg", "binary degree", "binary radian", "binary degrees", "binary radians"] # (π / 128) rad
15
15
 
16
- unit :arcmin, value: "1/60 deg", aliases: [:′, :amin, :arcminute, :arcminutes] # ((π / 180) / 60) rad
17
- unit :arcsec, value: "1/60 arcmin", aliases: [:″, :asec, :arcsecond, :arcseconds] # ((π / 180) / 3600) rad
16
+ unit "arcmin", value: "1/60 deg", aliases: ["′", "amin", "arcminute", "arcminutes"] # ((π / 180) / 60) rad
17
+ unit "arcsec", value: "1/60 arcmin", aliases: ["″", "asec", "arcsecond", "arcseconds"] # ((π / 180) / 3600) rad
18
18
  end
@@ -3,10 +3,10 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  UnitMeasurements::Quantity = UnitMeasurements.build do
6
- base :pc, aliases: [:pcs, :piece, :pieces]
6
+ base "pc", aliases: ["pcs", "piece", "pieces"]
7
7
 
8
- unit :pr, value: "2 pc", aliases: [:pair, :pairs]
9
- unit :dz, value: "6 pr", aliases: [:doz, :dozen, :dozens]
10
- unit :gr, value: "12 doz", aliases: [:gross, :grosses]
11
- unit :gg, value: "12 gr", aliases: [:"great gross", :"great grosses", :"grand gross", :"grand grosses", :"dozen gross", :"dozen grosses"]
8
+ unit "pr", value: "2 pc", aliases: ["pair", "pairs"]
9
+ unit "dz", value: "6 pr", aliases: ["doz", "dozen", "dozens"]
10
+ unit "gr", value: "12 doz", aliases: ["gross", "grosses"]
11
+ unit "gg", value: "12 gr", aliases: ["great gross", "great grosses", "grand gross", "grand grosses", "dozen gross", "dozen grosses"]
12
12
  end
@@ -3,10 +3,10 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  UnitMeasurements::SolidAngle = UnitMeasurements.build do
6
- si_unit :sr, aliases: [:steradian, :steradians]
6
+ si_unit "sr", aliases: ["steradian", "steradians"]
7
7
 
8
- unit :sp, value: [(4 * Math::PI), :sr], aliases: [:spat, :spats] # (4 * π) sr
9
- unit :deg², value: [((Math::PI / 180) ** 2), :sr], aliases: [:"(°)²", :"sq °", :"square degree", :"square degrees"] # (π / 180)² sr
10
- unit :arcmin², value: [(Rational(1, 60) ** 2), :deg²], aliases: [:"(′)²", :"sq ′", :"square arcminute", :"square arcminutes"] # ((π / 180) * (1 / 60))² sr
11
- unit :arcsec², value: [(Rational(1, 60) ** 2), :arcmin²], aliases: [:"(″)²", :"sq ″", :"square arcsecond", :"square arcseconds"] # ((π / 180) * (1 / 3600))² sr
8
+ unit "sp", value: [(4 * Math::PI), "sr"], aliases: ["spat", "spats"] # (4 * π) sr
9
+ unit "deg²", value: [((Math::PI / 180) ** 2), "sr"], aliases: ["(°)²", "sq °", "square degree", "square degrees"] # (π / 180)² sr
10
+ unit "arcmin²", value: [(Rational(1, 60) ** 2), "deg²"], aliases: ["(′)²", "sq ′", "square arcminute", "square arcminutes"] # ((π / 180) * (1 / 60))² sr
11
+ unit "arcsec²", value: [(Rational(1, 60) ** 2), "arcmin²"], aliases: ["(″)²", "sq ″", "square arcsecond", "square arcseconds"] # ((π / 180) * (1 / 3600))² sr
12
12
  end
@@ -3,7 +3,7 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  UnitMeasurements::SoundLevel = UnitMeasurements.build do
6
- si_unit :B, aliases: [:bel, :bels]
6
+ si_unit "B", aliases: ["bel", "bels"]
7
7
 
8
- unit :Np, value: [(20 / Math.log(10)), :dB], aliases: [:neper, :nepers] # (20 / ln(10)) dB
8
+ unit "Np", value: [(20 / Math.log(10)), "dB"], aliases: ["neper", "nepers"] # (20 / ln(10)) dB
9
9
  end
@@ -3,7 +3,7 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  UnitMeasurements::Temperature = UnitMeasurements.build do
6
- si_unit :K, aliases: [:kelvin, :kelvins]
6
+ si_unit "K", aliases: ["kelvin", "kelvins"]
7
7
 
8
- unit R, value: "5/9 K", aliases: [:R, Ra, :Ra, :rankine]
8
+ unit R", value: "5/9 K", aliases: ["R", Ra", "Ra", "rankine"]
9
9
  end
@@ -3,16 +3,16 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  UnitMeasurements::Time = UnitMeasurements.build do
6
- si_unit :s, aliases: [:sec, :second, :seconds]
6
+ si_unit "s", aliases: ["sec", "second", "seconds"]
7
7
 
8
- unit :h, value: "60 min", aliases: [:hr, :hour, :hours]
9
- unit :d, value: "24 h", aliases: [:day, :days]
10
- unit :wk, value: "7 d", aliases: [:week, :weeks]
11
- unit :fn, value: "2 wk", aliases: [:"4tnite", :fortnight, :fortnights]
12
- unit :mo, value: "30.4167 d", aliases: [:month, :months]
13
- unit :yr, value: "365 d", aliases: [:y, :year, :years]
14
- unit :min, value: "60 s", aliases: [:minute, :minutes]
15
- unit :qtr, value: "3 mo", aliases: [:quarter, :quarters]
16
- unit :dec, value: "10 y", aliases: [:decade, :decades]
17
- unit :cent, value: "10 dec", aliases: [:century, :centuries]
8
+ unit "h", value: "60 min", aliases: ["hr", "hour", "hours"]
9
+ unit "d", value: "24 h", aliases: ["day", "days"]
10
+ unit "wk", value: "7 d", aliases: ["week", "weeks"]
11
+ unit "fn", value: "2 wk", aliases: ["4tnite", "fortnight", "fortnights"]
12
+ unit "mo", value: "30.4167 d", aliases: ["month", "months"]
13
+ unit "yr", value: "365 d", aliases: ["y", "year", "years"]
14
+ unit "min", value: "60 s", aliases: ["minute", "minutes"]
15
+ unit "qtr", value: "3 mo", aliases: ["quarter", "quarters"]
16
+ unit "dec", value: "10 y", aliases: ["decade", "decades"]
17
+ unit "cent", value: "10 dec", aliases: ["century", "centuries"]
18
18
  end
@@ -3,16 +3,16 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  UnitMeasurements::Volume = UnitMeasurements.build do
6
- si_unit :l, aliases: [:liter, :litre, :liters, :litres]
6
+ si_unit "l", aliases: ["liter", "litre", "liters", "litres"]
7
7
 
8
- unit :m³, value: "1000 l", aliases: [:"m^3", :"cu m", :"cubic meter", :"cubic meters", :"cubic metre", :"cubic metres"]
9
- unit :mm³, value: "1e-9 m³", aliases: [:"mm^3", :"cu mm", :"cubic millimeter", :"cubic millimeters", :"cubic millimetre", :"cubic millimetres"]
10
- unit :cm³, value: "1e-6 m³", aliases: [:"cm^3", :"cu cm", :"cubic centimeter", :"cubic centimeters", :"cubic centimetre", :"cubic centimetres"]
11
- unit :dm³, value: "1 l", aliases: [:"dm^3", :"cu dm", :"cubic decimeter", :"cubic decimeters", :"cubic decimetre", :"cubic decimetres"]
12
- unit :km³, value: "1e+9 m³", aliases: [:"km^3", :"cu km", :"cubic kilometer", :"cubic kilometers", :"cubic kilometre", :"cubic kilometres"]
8
+ unit "m³", value: "1000 l", aliases: ["m^3", "cu m", "cubic meter", "cubic meters", "cubic metre", "cubic metres"]
9
+ unit "mm³", value: "1e-9 m³", aliases: ["mm^3", "cu mm", "cubic millimeter", "cubic millimeters", "cubic millimetre", "cubic millimetres"]
10
+ unit "cm³", value: "1e-6 m³", aliases: ["cm^3", "cu cm", "cubic centimeter", "cubic centimeters", "cubic centimetre", "cubic centimetres"]
11
+ unit "dm³", value: "1 l", aliases: ["dm^3", "cu dm", "cubic decimeter", "cubic decimeters", "cubic decimetre", "cubic decimetres"]
12
+ unit "km³", value: "1e+9 m³", aliases: ["km^3", "cu km", "cubic kilometer", "cubic kilometers", "cubic kilometre", "cubic kilometres"]
13
13
 
14
- unit :in³, value: "16.387064 ml", aliases: [:"in^3", :"cu in", :"cubic inch", :"cubic inches"]
15
- unit :ft³, value: "1728 in³", aliases: [:"ft^3", :"cu ft", :"cubic foot", :"cubic feet"]
16
- unit :yd³, value: "27 ft³", aliases: [:"yd^3", :"cu yd", :"cubic yard", :"cubic yards"]
17
- unit :mi³, value: "5451776000 yd³", aliases: [:"mi^3", :"cu mi", :"cubic mile", :"cubic miles"]
14
+ unit "in³", value: "16.387064 ml", aliases: ["in^3", "cu in", "cubic inch", "cubic inches"]
15
+ unit "ft³", value: "1728 in³", aliases: ["ft^3", "cu ft", "cubic foot", "cubic feet"]
16
+ unit "yd³", value: "27 ft³", aliases: ["yd^3", "cu yd", "cubic yard", "cubic yards"]
17
+ unit "mi³", value: "5451776000 yd³", aliases: ["mi^3", "cu mi", "cubic mile", "cubic miles"]
18
18
  end
@@ -3,8 +3,8 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  UnitMeasurements::Weight = UnitMeasurements.build do
6
- si_unit :g, aliases: [:gram, :grams, :gramme, :grammes]
6
+ si_unit "g", aliases: ["gram", "grams", "gramme", "grammes"]
7
7
 
8
- unit :q, value: "100 kg", aliases: [:quintal, :quintals]
9
- unit :t, value: "10 q", aliases: [:tonne, :tonnes, :"metric tonne", :"metric tonnes"]
8
+ unit "q", value: "100 kg", aliases: ["quintal", "quintals"]
9
+ unit "t", value: "10 q", aliases: ["tonne", "tonnes", "metric tonne", "metric tonnes"]
10
10
  end
@@ -3,5 +3,5 @@
3
3
  # -*- warn_indent: true -*-
4
4
 
5
5
  module UnitMeasurements
6
- VERSION = "2.6.0"
6
+ VERSION = "2.6.1"
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: unit_measurements
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.6.0
4
+ version: 2.6.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Harshal LADHE