SdbIndexRefJoinExtension<K extends SdbKey, V extends SdbValue, I extends SdbIndexKey> extension
Join methods on an index, sugar over asJoinSource.
This is the shape to prefer: the join key is the index key, so it is read straight from the index instead of out of every stored value, which is what lets an implementation able to join natively do it efficiently.
Every method takes the same options as its SdbJoinSourceExtension
counterpart; there is no key path, and options applies to the index key.
- on
-
- SdbIndexRef<
K, V, I>
- SdbIndexRef<
Methods
-
findJoinedRecords<
JK extends SdbKey, JV extends SdbValue> (SdbClient client, {required SdbJoinTarget< JK, JV> target, SdbFindOptions<I> ? options, SdbJoinFindOptions? joinOptions}) → Future<List< SdbRecordSnapshot< >JK, JV> > -
Available on SdbIndexRef<
See SdbJoinSourceExtension.findJoinedRecords.K, V, I> , provided by the SdbIndexRefJoinExtension extension -
findJoinRecords<
JK extends SdbKey, JV extends SdbValue> (SdbClient client, {required SdbJoinTarget< JK, JV> target, SdbFindOptions<I> ? options, SdbJoinFindOptions? joinOptions}) → Future<List< SdbRecordSnapshot< >K, V> > -
Available on SdbIndexRef<
See SdbJoinSourceExtension.findJoinRecords.K, V, I> , provided by the SdbIndexRefJoinExtension extension -
findJoinRows<
JK extends SdbKey, JV extends SdbValue> (SdbClient client, {required SdbJoinTarget< JK, JV> target, SdbFindOptions<I> ? options, SdbJoinFindOptions? joinOptions}) → Future<List< SdbJoinRow< >K, V, JK, JV> > -
Available on SdbIndexRef<
See SdbJoinSourceExtension.findJoinRows.K, V, I> , provided by the SdbIndexRefJoinExtension extension -
joinCount<
JK extends SdbKey, JV extends SdbValue> (SdbClient client, {required SdbJoinTarget< JK, JV> target, SdbFindOptions<I> ? options, SdbJoinFindOptions? joinOptions}) → Future<int> -
Available on SdbIndexRef<
See SdbJoinSourceExtension.joinCount.K, V, I> , provided by the SdbIndexRefJoinExtension extension -
joinIterate<
JK extends SdbKey, JV extends SdbValue> (SdbClient client, {required SdbJoinTarget< JK, JV> target, SdbTransactionMode? mode, SdbFindOptions<I> ? options, SdbJoinFindOptions? joinOptions, required SdbJoinRowHandler<K, V, JK, JV> onRow}) → Future<void> -
Available on SdbIndexRef<
See SdbJoinSourceExtension.joinIterate.K, V, I> , provided by the SdbIndexRefJoinExtension extension -
joinIterateJoinedRecords<
JK extends SdbKey, JV extends SdbValue> (SdbClient client, {required SdbJoinTarget< JK, JV> target, SdbTransactionMode? mode, SdbFindOptions<I> ? options, SdbJoinFindOptions? joinOptions, required SdbJoinRecordHandler<JK, JV> onRecord}) → Future<void> -
Available on SdbIndexRef<
See SdbJoinSourceExtension.joinIterateJoinedRecords.K, V, I> , provided by the SdbIndexRefJoinExtension extension -
joinIterateRecords<
JK extends SdbKey, JV extends SdbValue> (SdbClient client, {required SdbJoinTarget< JK, JV> target, SdbTransactionMode? mode, SdbFindOptions<I> ? options, SdbJoinFindOptions? joinOptions, required SdbJoinRecordHandler<K, V> onRecord}) → Future<void> -
Available on SdbIndexRef<
See SdbJoinSourceExtension.joinIterateRecords.K, V, I> , provided by the SdbIndexRefJoinExtension extension