Files
ueblueprint/js/entity/IntegerEntity.js
2024-09-08 22:28:42 +02:00

24 lines
579 B
JavaScript
Executable File

import P from "parsernostrum"
import NumberEntity from "./NumberEntity.js"
export default class IntegerEntity extends NumberEntity {
static grammar = this.createGrammar()
get value() {
return super.value
}
set value(value) {
value = Math.trunc(value)
if (value >= 1 << 31 && value < -(1 << 31)) {
value = Math.floor(value)
super.value = value
}
}
/** @returns {P<IntegerEntity>} */
static createGrammar() {
return P.numberInteger.map(v => new this(v))
}
}