@drewsonne/maya-calculator-parser
Version:
Typescript package to parse plaintext calculations and create operators
44 lines • 2.02 kB
JavaScript
;
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
var base_1 = require("../base");
var layer_2_test_1 = require("../../parsers/layer-2-test");
var CalendarRoundOperationToken = (function (_super) {
__extends(CalendarRoundOperationToken, _super);
function CalendarRoundOperationToken() {
return _super !== null && _super.apply(this, arguments) || this;
}
CalendarRoundOperationToken.parse = function (operand1, operator, operand2) {
if (layer_2_test_1.isCalendarRoundToken(operand1)) {
if (layer_2_test_1.isOperatorToken(operator)) {
if (layer_2_test_1.isCalendarRoundToken(operand2)) {
return new CalendarRoundOperationToken([operand1, operator, operand2]);
}
}
}
throw new Error("Could not parse: '" + operand1 + ", " + operator + ", " + operand2 + "'");
};
CalendarRoundOperationToken.prototype.equal = function (otherToken) {
if (otherToken instanceof CalendarRoundOperationToken) {
return this.value[0].equal(otherToken.value[0]) &&
this.value[1].equal(otherToken.value[1]) &&
this.value[2].equal(otherToken.value[2]);
}
return false;
};
return CalendarRoundOperationToken;
}(base_1.Token));
exports.default = CalendarRoundOperationToken;
//# sourceMappingURL=calendar-round-operation-token.js.map