removeByID method

bool removeByID(
  1. Object? id
)

Implementation

bool removeByID(Object? id) {
  if (id == null) return false;

  if (isNull) {
    return false;
  }

  var ids = _ids;

  if (isEntitiesSet) {
    var entities = _entities!;

    if (ids != null) {
      var idx = ids.indexOf(id);

      if (idx >= 0) {
        ids.removeAt(idx);
        entities.removeAt(idx);
        return true;
      }
    }

    var idx = entities.indexWhere((e) => _getEntityID(e) == id);

    if (idx >= 0) {
      entities.removeAt(idx);
      return true;
    }
  } else if (isIDsSet) {
    return ids!.remove(id);
  }

  return false;
}