ruby-mext 0.21.0 → 0.21.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: 641330c8c2cd9031e4ef3be9947cff95bae6b687c3b1466843a3df066d53243f
4
- data.tar.gz: 04e7e322a7dcbfc7da30fd8a5858aa52dda0c8201a83142118b58f65ba8780b0
3
+ metadata.gz: af5724f948e0ea3cdfd938e89f37c4daf105d42d3c114faa68385269907ced28
4
+ data.tar.gz: 17886d733497b5553741ee31022f13378a3f38d0043182b10391abebdc9fd511
5
5
  SHA512:
6
- metadata.gz: 63b6f8e53ede313224d7ed45c65157b73bad7e5ced9436beac0efa9eb92f81331ac0e731dac6f3535917609014e670e1c3cd6a9aeabe66324566efc395d2a613
7
- data.tar.gz: 107500aec8b7c15107192e71b0e23c780432c88d8f2964b1124ce293dbc10438213174ea4fd716804be1de39ae197c0ff265aee225013995c9344af45ddf9ccc
6
+ metadata.gz: 833603ff9cf2f2845fb5e3757fb5c7cef2679650439c65d3e2ea3cc7506fbea5cbd37920f56ecc067dff3820f35fba4b6a9afb0c9339b8286fc404012142fc90
7
+ data.tar.gz: 109db15f348ca299e959d3bd61d6371ac5f1d553e56ab9d0f5ddd8e8269f44a5e9b63a2bb9ba80667a06eee6f959f7649d3b21c91bcd113b1bb7c19fc6dc7798
@@ -11,11 +11,32 @@ module Mext
11
11
  class Meter
12
12
 
13
13
  attr_accessor :numerator, :divisor
14
+
15
+ alias_method :denominator, :divisor
14
16
 
15
17
  def initialize(n, d)
16
18
  self.numerator = n.to_f
17
19
  self.divisor = d.to_f
18
20
  end
21
+
22
+ def to_r
23
+ Rational(self.numerator, self.divisor)
24
+ end
25
+
26
+ def to_s
27
+ "#{self.numerator}/#{self.divisor}"
28
+ end
29
+ #
30
+ # we use the logic of +Rational+ to perform logic on +Meter+
31
+ #
32
+ [:==, :<, :<=, :>, :>=, :<=>, :===].each { |m| define_method(m) { |other| common_logic(m, other) } }
33
+
34
+ private
35
+
36
+ def common_logic(method, other)
37
+ raise ArgumentError unless other.kind_of?(Meter) || other.kind_of?(Rational)
38
+ self.to_r.send(method, other.to_r)
39
+ end
19
40
 
20
41
  end
21
42
 
data/lib/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Mext
2
- VERSION = '0.21.0'
2
+ VERSION = '0.21.1'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-mext
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.21.0
4
+ version: 0.21.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nicola Bernardini