summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRich Hickey <richhickey@gmail.com>2008-06-02 14:34:42 +0000
committerRich Hickey <richhickey@gmail.com>2008-06-02 14:34:42 +0000
commit1206781b751321716b1cd7a85331d9991a12f5bd (patch)
treeec449d4b8a28d4fb55d4a3b9811b4aad3ce4ef54 /src
parentb692f3e2697badd25b593298887ab5c3f91c5687 (diff)
named int and long divide unchecked-divide
Diffstat (limited to 'src')
-rw-r--r--src/boot.clj6
-rw-r--r--src/jvm/clojure/lang/Numbers.java4
2 files changed, 8 insertions, 2 deletions
diff --git a/src/boot.clj b/src/boot.clj
index 7a2ba4f7..f7958b22 100644
--- a/src/boot.clj
+++ b/src/boot.clj
@@ -625,6 +625,12 @@
{:inline (fn [x y] `(. clojure.lang.Numbers (unchecked_multiply ~x ~y)))}
[x y] (. clojure.lang.Numbers (unchecked_multiply x y)))
+(defn unchecked-divide
+ "Returns the division of x by y, both int or long.
+ Note - uses a primitive operator subject to truncation."
+ {:inline (fn [x y] `(. clojure.lang.Numbers (unchecked_divide ~x ~y)))}
+ [x y] (. clojure.lang.Numbers (unchecked_divide x y)))
+
(defn pos?
"Returns true if num is greater than zero, else false"
{:tag Boolean
diff --git a/src/jvm/clojure/lang/Numbers.java b/src/jvm/clojure/lang/Numbers.java
index 44984f06..4b673cae 100644
--- a/src/jvm/clojure/lang/Numbers.java
+++ b/src/jvm/clojure/lang/Numbers.java
@@ -1594,7 +1594,7 @@ static public int multiply(int x, int y){
return ret;
}
-static public int divide(int x, int y){
+static public int unchecked_divide(int x, int y){
return x / y;
}
@@ -1697,7 +1697,7 @@ static public long multiply(long x, long y){
return ret;
}
-static public long divide(long x, long y){
+static public long unchecked_divide(long x, long y){
return x / y;
}