UNPKG

@drewsonne/maya-calculator-parser

Version:

Typescript package to parse plaintext calculations and create operators

68 lines 3.27 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.isSpaceToken = exports.isOperatorToken = exports.isToken = exports.isLongCountWildcardOperationToken = exports.isCalendarRoundWildcardOperationToken = exports.isCalendarRoundToken = exports.isLongCountToken = exports.isCalendarRoundOperation = exports.isLongCountOperation = exports.isFullOperation = exports.isPartialOperation = void 0; var calendar_round_token_1 = __importDefault(require("../tokens/layer-1/calendar-round-token")); var long_count_token_1 = __importDefault(require("../tokens/layer-1/long-count-token")); var operator_token_1 = __importDefault(require("../tokens/layer-0/operator-token")); var calendar_round_wildcard_operation_token_1 = __importDefault(require("../tokens/layer-2/calendar-round-wildcard-operation-token")); var long_count_wildcard_operation_token_1 = __importDefault(require("../tokens/layer-2/long-count-wildcard-operation-token")); var space_token_1 = __importDefault(require("../tokens/layer-0/space-token")); function isPartialOperation(cache, layer1Token) { var full = cache.concat([layer1Token]); if (full.length === 1) { return isToken(full[0]); } if (full.length === 2) { return isToken(full[0]) && isOperatorToken(full[1]); } return false; } exports.isPartialOperation = isPartialOperation; function isFullOperation(cache, layer1Token) { var full = cache.concat([layer1Token]); if (full.length === 3) { return isToken(full[0]) && isOperatorToken(full[1]) && isToken(full[2]); } return false; } exports.isFullOperation = isFullOperation; function isLongCountOperation(tokens) { return isLongCountToken(tokens[0]) && isOperatorToken(tokens[1]) && isLongCountToken(tokens[2]); } exports.isLongCountOperation = isLongCountOperation; function isCalendarRoundOperation(tokens) { return isCalendarRoundToken(tokens[0]) && isOperatorToken(tokens[1]) && isCalendarRoundToken(tokens[2]); } exports.isCalendarRoundOperation = isCalendarRoundOperation; function isLongCountToken(t) { return (t instanceof long_count_token_1.default); } exports.isLongCountToken = isLongCountToken; function isCalendarRoundToken(t) { return (t instanceof calendar_round_token_1.default); } exports.isCalendarRoundToken = isCalendarRoundToken; function isCalendarRoundWildcardOperationToken(t) { return (t instanceof calendar_round_wildcard_operation_token_1.default); } exports.isCalendarRoundWildcardOperationToken = isCalendarRoundWildcardOperationToken; function isLongCountWildcardOperationToken(t) { return t instanceof long_count_wildcard_operation_token_1.default; } exports.isLongCountWildcardOperationToken = isLongCountWildcardOperationToken; function isToken(t) { return isCalendarRoundToken(t) || isLongCountToken(t); } exports.isToken = isToken; function isOperatorToken(t) { return (t instanceof operator_token_1.default); } exports.isOperatorToken = isOperatorToken; function isSpaceToken(t) { return t instanceof space_token_1.default; } exports.isSpaceToken = isSpaceToken; //# sourceMappingURL=layer-2-test.js.map