UNPKG

nerdamer-ts

Version:

javascript light-weight symbolic math expression evaluator

26 lines 906 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.mod = void 0; const Symbol_1 = require("../../../Types/Symbol"); const Utils_1 = require("../../../Core/Utils"); const index_1 = require("../index"); /** * The mod function * @param {Symbol} symbol1 * @param {Symbol} symbol2 * @returns {Symbol} */ function mod(symbol1, symbol2) { if (symbol1.isConstant() && symbol2.isConstant()) { var retval = new Symbol_1.Symbol(1); retval.multiplier = retval.multiplier.multiply(symbol1.multiplier.mod(symbol2.multiplier)); return retval; } //try to see if division has remainder of zero var r = (0, index_1.divide)(symbol1.clone(), symbol2.clone()); if ((0, Utils_1.isInt)(r)) return new Symbol_1.Symbol(0); return (0, Symbol_1.symfunction)('mod', [symbol1, symbol2]); } exports.mod = mod; //# sourceMappingURL=mod.js.map