setFieldsFromMap method

FutureOr<O> setFieldsFromMap(
  1. O o,
  2. Map<String, dynamic> fields, {
  3. EntityProvider? entityProvider,
  4. EntityCache? entityCache,
  5. EntityResolutionRules? resolutionRules,
})

Implementation

FutureOr<O> setFieldsFromMap(
  O o,
  Map<String, dynamic> fields, {
  EntityProvider? entityProvider,
  EntityCache? entityCache,
  EntityResolutionRules? resolutionRules,
}) {
  entityCache ??= JsonEntityCacheSimple();

  var fieldsNames = this.fieldsNames(o);

  var fieldsValues = getFieldsValuesFromMap(
    fieldsNames,
    fields,
    fieldsNamesIndexes: fieldsNamesIndexes(o),
    fieldsNamesLC: fieldsNamesLC(o),
    fieldsNamesSimple: fieldsNamesSimple(o),
  );

  var setFutures = fieldsValues.entries.map((e) {
    return setFieldValueDynamic(
      o,
      e.key,
      e.value,
      resolveFiledName: false,
      entityProvider: entityProvider,
      entityCache: entityCache,
      resolutionRules: resolutionRules,
    ).resolveWithValue(true);
  });

  return setFutures.resolveAllWithValue(o);
}