nat-int?

added
1.9

ns
clojure.core

type
function

(nat-int? x)

Return true if x is a non-negative fixed precision integer

                user> (nat-int? 0)
true
user> (nat-int? 1)
true
user> (nat-int? -1)
false
;; especially useful for specs
user> (require '[clojure.spec :as spec])
nil
user> (spec/def quantity nat-int?)
user/quantity
user> (spec/def ::quantity nat-int?)
:user/quantity
user> (spec/valid? ::quantity -1)
false
            
                (nat-int? 0)
;;=> true
(nat-int? 1)
;;=> true
(nat-int? 9223372036854775807)
;;=> true

;;;; false for negative values

(nat-int? -1)
;;=> false

;;;; false for decimal values

(nat-int? 0.0)
;;=> false
(nat-int? 1.0)
;;=> false
(nat-int? 1/2)
;;=> false

;;;; false for BigInt values

(nat-int? 0N)
;;=> false
(nat-int? 1N)
;;=> false
(nat-int? 9223372036854775808)
;;=> false