ASTValueNum<T extends num> constructor

ASTValueNum<T extends num>(
  1. ASTType<T> type,
  2. T value, {
  3. bool? negative,
})

Implementation

ASTValueNum(ASTType<T> type, T value, {bool? negative})
    : negative = negative ?? value.isNegative,
      super(
        type,
        negative != null
            ? (negative
                ? (value.isNegative ? value : (-value as T))
                : (value.isNegative ? (-value as T) : value))
            : value,
      ) {
  assert(this.value.isNegative == this.negative);
}