identifyProperties<T, U extends ManagedObject> method Null safety

List<KeyPath> identifyProperties<T, U extends ManagedObject>(
  1. T propertiesIdentifier(
    1. U x
    )
)

Returns a list of properties selected by propertiesIdentifier.

Each selected property in propertiesIdentifier is returned in a KeyPath object that fully identifies the property relative to this entity.

Implementation

List<KeyPath> identifyProperties<T, U extends ManagedObject>(
  T Function(U x) propertiesIdentifier,
) {
  final tracker = ManagedAccessTrackingBacking();
  final obj = instanceOf<U>(backing: tracker);
  propertiesIdentifier(obj);

  return tracker.keyPaths;
}