"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.IntRange = void 0;
class IntRange {
    constructor(lower, upper) {
        this.lower = lower;
        this.upper = upper !== undefined ? upper : lower;
    }
    getLower() {
        return this.lower;
    }
    getUpper() {
        return this.upper;
    }
    equals(o) {
        if (!(o instanceof IntRange))
            return false;
        const r = o;
        return this.lower === r.lower && this.upper === r.upper;
    }
    toString() {
        return "[" + this.lower + " - " + this.upper + "]";
    }
}
exports.IntRange = IntRange;
IntRange.MAX_INT = 2147483647;
IntRange.STAR = new IntRange(0, IntRange.MAX_INT);
IntRange.PLUS = new IntRange(1, IntRange.MAX_INT);
IntRange.OPTIONAL = new IntRange(0, 1);
//# sourceMappingURL=IntRange.js.map