diff options
| author | ksss <[email protected]> | 2014-03-21 11:58:47 +0900 |
|---|---|---|
| committer | ksss <[email protected]> | 2014-03-21 11:58:47 +0900 |
| commit | 72fe19225900d795a501755f4b492486e1bcb726 (patch) | |
| tree | 1ef7d4abb8b08a9687de5c2dfc90226720382114 /mrblib/compar.rb | |
| parent | 2c44f96e78832dd42e35a9cae6e90dccaf5c2178 (diff) | |
| download | mruby-72fe19225900d795a501755f4b492486e1bcb726.tar.gz mruby-72fe19225900d795a501755f4b492486e1bcb726.zip | |
Fix behavior of Comparable methods
when <=> return nil
Diffstat (limited to 'mrblib/compar.rb')
| -rw-r--r-- | mrblib/compar.rb | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/mrblib/compar.rb b/mrblib/compar.rb index 40fb2e7f0..44595974a 100644 --- a/mrblib/compar.rb +++ b/mrblib/compar.rb @@ -13,7 +13,7 @@ module Comparable def < other cmp = self <=> other if cmp.nil? - false + raise ArgumentError, "comparison of #{self.class} with #{other.class} failed" elsif cmp < 0 true else @@ -30,7 +30,7 @@ module Comparable def <= other cmp = self <=> other if cmp.nil? - false + raise ArgumentError, "comparison of #{self.class} with #{other.class} failed" elsif cmp <= 0 true else @@ -62,7 +62,7 @@ module Comparable def > other cmp = self <=> other if cmp.nil? - false + raise ArgumentError, "comparison of #{self.class} with #{other.class} failed" elsif cmp > 0 true else @@ -79,7 +79,7 @@ module Comparable def >= other cmp = self <=> other if cmp.nil? - false + raise ArgumentError, "comparison of #{self.class} with #{other.class} failed" elsif cmp >= 0 true else |
