diff options
-rw-r--r-- | src/clj/clojure/core.clj | 1 | ||||
-rw-r--r-- | test/clojure/test_clojure/numbers.clj | 5 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/clj/clojure/core.clj b/src/clj/clojure/core.clj index 4cdf794d..b6fe498a 100644 --- a/src/clj/clojure/core.clj +++ b/src/clj/clojure/core.clj @@ -3122,6 +3122,7 @@ :static true} [x] (cond (instance? BigInteger x) x + (instance? clojure.lang.BigInt x) (.toBigInteger ^clojure.lang.BigInt x) (decimal? x) (.toBigInteger ^BigDecimal x) (ratio? x) (.bigIntegerValue ^clojure.lang.Ratio x) (number? x) (BigInteger/valueOf (long x)) diff --git a/test/clojure/test_clojure/numbers.clj b/test/clojure/test_clojure/numbers.clj index 9c6be05f..688c8c40 100644 --- a/test/clojure/test_clojure/numbers.clj +++ b/test/clojure/test_clojure/numbers.clj @@ -31,6 +31,11 @@ (decimal? v) (not (float? v))))) +(deftest BigInteger-conversions + (are [x] (biginteger x) + Long/MAX_VALUE + 13178456923875639284562345789M + 13178456923875639284562345789N)) ;; *** Functions *** |