defaultFieldValueResolver static method
Object?
defaultFieldValueResolver(
- String field,
- Object? value,
- TypeReflection type,
- JsonDecoder jsonDecoder,
- EntityHandlerProvider? entityHandlerProvider,
Implementation
static Object? defaultFieldValueResolver(
String field,
Object? value,
TypeReflection type,
JsonDecoder jsonDecoder,
EntityHandlerProvider? entityHandlerProvider,
) {
if (type.isListEntity && value is Iterable) {
return _iterableCaster(value, type, jsonDecoder, entityHandlerProvider);
} else {
if (value == null) {
return null;
} else if (type.type == value.runtimeType) {
return value;
} else if (type.isStringType) {
return TypeParser.parseString(value);
} else if (type.isIntType) {
return TypeParser.parseInt(value);
} else if (type.isDoubleType) {
return TypeParser.parseDouble(value);
} else if (type.isNumType) {
return TypeParser.parseNum(value);
} else if (type.isBoolType) {
return TypeParser.parseBool(value);
} else if (type.isEntityReferenceType && value is EntityReference) {
if (type.arguments0?.type == value.type) {
return value;
}
} else if (type.isEntityReferenceListType &&
value is EntityReferenceList) {
if (type.arguments0?.type == value.type) {
return value;
}
}
return jsonDecoder.fromJson(
value,
typeInfo: type.typeInfo,
autoResetEntityCache: false,
);
}
}