Creates a sink collecting the items of the feed into an object under extracted keys.
Keys must be unique: an item whose key was already collected fails the sink rather than silently overwriting the
entry standing under it. Keys are limited to PropertyKey values and compared after property key coercion, so the
number 1 and the string "1" denote the same entry.
Entries are collected as own properties, so a __proto__ key is stored as data rather than altering the prototype
chain of the returned object; they are enumerated in standard property order, that is integer-like keys in
ascending numeric order, followed by other string keys and symbol keys in collection order. The object is made
immutable once the feed is drained, freezing it together with the values collected into it.
Accumulates the whole feed in memory. For large or infinite feeds, this may exhaust memory or never complete.
Freezing clones structured items, giving them a fresh identity: entries are not reachable through the original item reference. Supply structured items as immutable values to keep their identity stable.
The type of items in the feed
The type of object keys
A sink resolving to the deeply immutable object pairing each extracted key with the item it was extracted from
Creates a sink collecting extracted values into a deeply immutable object under extracted keys.
Collects like toObject without a value argument, pairing each key with an extracted value rather than
with the item itself.
The type of items in the feed
The type of object keys
The type of object values
A sink resolving to the deeply immutable object pairing each extracted key with the value extracted alongside it
Creates a sink collecting items or extracted values into a deeply immutable object under extracted keys.