userValue property

dynamic userValue

Return the original data value with its type.

If the data value is null, it will have dynamic type. Throw UnsupportedDataType if the data type is unsupported.

Implementation

dynamic get userValue {
  dynamic result;
  if (type == DataType.nullType) {
    result = null;
  } else if (type == DataType.intType) {
    result = int.parse(value!);
  } else if (type == DataType.doubleType) {
    result = double.parse(value!);
  } else if (type == DataType.stringType) {
    result = value;
  } else if (type == DataType.boolType) {
    result = value == 'true' ? true : false;
  } else if (type == DataType.listType || type == DataType.mapType) {
    result = jsonDecode(value!);
  } else {
    throw UnsupportedDataType();
  }

  return result;
}