cast method
Implementation
@override
Value cast(ValueType newType) {
if (newType == valueType) {
return this;
}
if (newType == ValueType.Bool) {
return BoolValue(value == 0.0 ? false : true);
}
if (newType == ValueType.Int) {
return IntValue(value.toInt());
}
if (newType == ValueType.String) {
return StringValue(value.toString());
}
throw badCaseException(newType);
}