isCachedEntity<O> method

  1. @override
bool isCachedEntity<O>(
  1. O entity, {
  2. Type? type,
  3. bool identicalEquality = true,
  4. dynamic idGetter(
    1. O o
    )?,
})
override

Returns true if entity is cached.

  • If identicalEquality is true will use identical for equality.
  • If type is defined set it will overwrite O or entity.runtimeType.

Implementation

@override
bool isCachedEntity<O>(O entity,
    {Type? type,
    bool identicalEquality = true,
    dynamic Function(O o)? idGetter}) {
  if (entity == null) return false;

  type ??= O;
  if (type == Object || type == dynamic) {
    type = entity.runtimeType;
  }

  final eq = identicalEquality ? identical : (a, b) => a == b;

  if (idGetter != null) {
    return _isCachedEntityImplWithIdGetter(type, entity, eq, idGetter);
  } else {
    return _isCachedEntityImpl(type, entity, eq);
  }
}