valueAsInt method
If value is int, then returns int. Otherwise, is null.
If you want any numerical type supported by Dart,
use valueAs<num>().
Implementation
int? valueAsInt() {
final num? n = valueAs<num>();
if (n == null) return null;
final int i = (n ~/ 1);
if (i.toDouble() == n.toDouble()) {
return i;
}
return null;
}