Arthur Brandao 6 anni fa
parent
commit
be0a69cb1e
2 ha cambiato i file con 3 aggiunte e 0 eliminazioni
  1. 1 0
      src/migl/lisp/LispEval.java
  2. 2 0
      src/migl/lisp/operator/MathOperator.java

+ 1 - 0
src/migl/lisp/LispEval.java

@@ -37,6 +37,7 @@ public class LispEval {
 		operators.put("cos", new MathOperator());
 		operators.put("rint", new MathOperator());
 		operators.put("round", new MathOperator());
+		operators.put("signum", new MathOperator());
 		operators.put("quote", (op, lisp) -> {
 			if(lisp.size() != 1) {
 				throw new LispError(LispError.ERR_NUM_ARG);

+ 2 - 0
src/migl/lisp/operator/MathOperator.java

@@ -28,6 +28,8 @@ public class MathOperator implements LispOperator {
 				return LispElement.generate(Math.rint(elt.toNumber()));
 			case "round":
 				return LispElement.generate(Math.round(elt.toNumber()));
+			case "signum":
+				return LispElement.generate(Math.signum(elt.toNumber()));
 			default:
 				throw new LispError(operator + LispError.ERR_UNKNOW);
 		}