beforeDeserialize method

  1. @override
Object? beforeDeserialize(
  1. Object? object,
  2. FullType specifiedType
)
override

Implementation

@override
Object? beforeDeserialize(Object? object, FullType specifiedType) {
  if (specifiedType.root != int && specifiedType.root != bool) return object;
  if (object is int && specifiedType.root == bool) {
    return object > 0;
  } else if (object is bool && specifiedType.root == int) {
    return object ? 1 : 0;
  } else if (object is bool && specifiedType.root == bool) {
    return object;
  } else if (object is int && specifiedType.root == int) {
    return object;
  } else if (object == null && specifiedType.root == bool) {
    return false;
  } else if (object == null && specifiedType.root == int) {
    return 0;
  } else {
    return object;
  }
}