consumeState method
Implementation
Object? consumeState(String propertyId, String value) {
final type = _schema[propertyId];
if (type == null) {
throw UnknownPropertyError(id, propertyId);
}
value = value.trim();
if (value.isEmpty) {
_state.remove(propertyId);
return null;
}
Object? parsedValue;
if (type == int) {
parsedValue = int.tryParse(value);
} else if (type == double) {
parsedValue = double.tryParse(value);
} else if (type == bool) {
parsedValue =
(value == "1" || value.toLowerCase() == "on") ? true : false;
} else {
parsedValue = value;
}
_state[propertyId] = parsedValue;
return parsedValue;
}