1
0
mirror of https://github.com/DanilaFe/abacus synced 2024-06-30 22:51:52 -07:00

Fix caret just multiplying.

This commit is contained in:
Danila Fedorin 2017-08-04 14:54:01 -07:00
parent d06f611a2e
commit 508e98413d

View File

@ -378,15 +378,15 @@ public class StandardPlugin extends Plugin {
@Override @Override
protected NumberInterface applyInternal(NumberInterface[] params) { protected NumberInterface applyInternal(NumberInterface[] params) {
NumberInterface check;
if (Thread.currentThread().isInterrupted()) return null; if (Thread.currentThread().isInterrupted()) return null;
else if (params[0].compareTo(NaiveNumber.ZERO.promoteTo(params[0].getClass())) == 0) else if (params[0].compareTo(NaiveNumber.ZERO.promoteTo(params[0].getClass())) == 0)
return NaiveNumber.ZERO.promoteTo(params[0].getClass()); return NaiveNumber.ZERO.promoteTo(params[0].getClass());
else if (params[1].compareTo(NaiveNumber.ZERO.promoteTo(params[0].getClass())) == 0) else if (params[1].compareTo(NaiveNumber.ZERO.promoteTo(params[0].getClass())) == 0)
return NaiveNumber.ONE.promoteTo(params[1].getClass()); return NaiveNumber.ONE.promoteTo(params[1].getClass());
if ((check = FUNCTION_EXP.apply(FUNCTION_LN.apply(params[0]))) != null && (check = check.multiply(params[1])) != null) FUNCTION_EXP.apply(FUNCTION_LN.apply(FUNCTION_ABS.apply(params[0])).multiply(params[1]));
return check; NumberInterface check = FUNCTION_LN.apply(FUNCTION_ABS.apply(params[0]));
return null; if(check == null) return null;
return FUNCTION_EXP.apply(check.multiply(params[1]));
} }
}); });
/** /**