summaryrefslogtreecommitdiff
path: root/src/jvm/clojure/lang/Numbers.java
diff options
context:
space:
mode:
authorRich Hickey <richhickey@gmail.com>2009-02-09 16:08:22 +0000
committerRich Hickey <richhickey@gmail.com>2009-02-09 16:08:22 +0000
commitf1daffdbae886dab563f5653ffd78db40403115c (patch)
tree4e18cc244e2b569027a2f97fad1a716e0dcc5401 /src/jvm/clojure/lang/Numbers.java
parent5577a47a390782d7ab911c2e3c4c8be1b0341aa8 (diff)
added #_ ignore form reader macro
added IDeref above IRef, made delays and futures implement IDeref renamed/moved IRef.get() -> IDeref.deref() deref/@ maps to IDeref/deref added future-calls and future implement pmap on future implement pcalls on pmap
Diffstat (limited to 'src/jvm/clojure/lang/Numbers.java')
-rw-r--r--src/jvm/clojure/lang/Numbers.java22
1 files changed, 8 insertions, 14 deletions
diff --git a/src/jvm/clojure/lang/Numbers.java b/src/jvm/clojure/lang/Numbers.java
index 4a49c8cb..ae87c913 100644
--- a/src/jvm/clojure/lang/Numbers.java
+++ b/src/jvm/clojure/lang/Numbers.java
@@ -15,12 +15,6 @@ package clojure.lang;
import java.math.BigInteger;
import java.math.BigDecimal;
import java.math.MathContext;
-import java.util.concurrent.Executor;
-import java.util.concurrent.Executors;
-import java.util.concurrent.Callable;
-import java.util.concurrent.ExecutorService;
-import java.util.LinkedList;
-import java.util.Arrays;
public class Numbers{
@@ -1039,35 +1033,35 @@ final static class BigDecimalOps implements Ops{
}
final public Number add(Number x, Number y){
- MathContext mc = (MathContext) MATH_CONTEXT.get();
+ MathContext mc = (MathContext) MATH_CONTEXT.deref();
return mc == null
? toBigDecimal(x).add(toBigDecimal(y))
: toBigDecimal(x).add(toBigDecimal(y), mc);
}
final public Number multiply(Number x, Number y){
- MathContext mc = (MathContext) MATH_CONTEXT.get();
+ MathContext mc = (MathContext) MATH_CONTEXT.deref();
return mc == null
? toBigDecimal(x).multiply(toBigDecimal(y))
: toBigDecimal(x).multiply(toBigDecimal(y), mc);
}
public Number divide(Number x, Number y){
- MathContext mc = (MathContext) MATH_CONTEXT.get();
+ MathContext mc = (MathContext) MATH_CONTEXT.deref();
return mc == null
? toBigDecimal(x).divide(toBigDecimal(y))
: toBigDecimal(x).divide(toBigDecimal(y), mc);
}
public Number quotient(Number x, Number y){
- MathContext mc = (MathContext) MATH_CONTEXT.get();
+ MathContext mc = (MathContext) MATH_CONTEXT.deref();
return mc == null
? toBigDecimal(x).divideToIntegralValue(toBigDecimal(y))
: toBigDecimal(x).divideToIntegralValue(toBigDecimal(y), mc);
}
public Number remainder(Number x, Number y){
- MathContext mc = (MathContext) MATH_CONTEXT.get();
+ MathContext mc = (MathContext) MATH_CONTEXT.deref();
return mc == null
? toBigDecimal(x).remainder(toBigDecimal(y))
: toBigDecimal(x).remainder(toBigDecimal(y), mc);
@@ -1083,14 +1077,14 @@ final static class BigDecimalOps implements Ops{
//public Number subtract(Number x, Number y);
final public Number negate(Number x){
- MathContext mc = (MathContext) MATH_CONTEXT.get();
+ MathContext mc = (MathContext) MATH_CONTEXT.deref();
return mc == null
? ((BigDecimal) x).negate()
: ((BigDecimal) x).negate(mc);
}
public Number inc(Number x){
- MathContext mc = (MathContext) MATH_CONTEXT.get();
+ MathContext mc = (MathContext) MATH_CONTEXT.deref();
BigDecimal bx = (BigDecimal) x;
return mc == null
? bx.add(BigDecimal.ONE)
@@ -1098,7 +1092,7 @@ final static class BigDecimalOps implements Ops{
}
public Number dec(Number x){
- MathContext mc = (MathContext) MATH_CONTEXT.get();
+ MathContext mc = (MathContext) MATH_CONTEXT.deref();
BigDecimal bx = (BigDecimal) x;
return mc == null
? bx.subtract(BigDecimal.ONE)