convertValue<T> function
dynamic
convertValue<
T>( - dynamic value,
- String returnType
)
Implementation
dynamic convertValue<T>(dynamic value, String returnType) {
try {
switch (returnType.toLowerCase()) {
case 'int':
if (value is String) {
return int.tryParse(value) ?? 0;
} else if (value is double) {
return value.toInt();
} else if (value is int) {
return value;
}
return 0;
case 'double':
if (value is String) {
return double.tryParse(value) ?? 0.0;
} else if (value is int) {
return value.toDouble();
} else if (value is double) {
return value;
}
return 0.0;
case 'string':
return value?.toString() ?? '';
case 'bool':
if (value is String) {
return bool.tryParse(value);
} else if (value is bool) {
return value;
}
return false;
default:
return value;
}
} catch (e) {
// Handle any unexpected errors during conversion
switch (returnType.toLowerCase()) {
case 'int':
return 0;
case 'double':
return 0.0;
case 'string':
return '';
default:
return value;
}
}
}