mirror of
https://github.com/barsdeveloper/ueblueprint.git
synced 2026-02-03 23:55:04 +08:00
24 lines
579 B
JavaScript
Executable File
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))
|
|
}
|
|
}
|