createDefault method

dynamic createDefault()

Implementation

dynamic createDefault() {
  switch (type) {
    case String:
      return "";
    case int:
      return 0;
    case double:
      return 0.0;
    case bool:
      return false;
  }

  if (!field.typeDescriptor.constructorParameters.firstWhere((param) => param.name == name).isRequired)
    return defaultValue;

  if (field.factoryConstructor != null)
    return field.factoryConstructor!();

  if (field.type is ObjectType)
    return (field.type as ObjectType).typeDescriptor.constructor!();

  //if (defaultValue != null)
    return defaultValue; // e.g. enums

  // children...

  //return field.factoryConstructor!();
}