var searchIndex = {}; searchIndex["differential_dataflow"] = {"doc":"Differential dataflow is a high-throughput, low-latency data-parallel programming framework.","items":[[3,"Collection","differential_dataflow","A mutable collection of values of type `D`",null,null],[12,"inner","","Underlying timely dataflow stream.",0,null],[0,"collection","","A time-varying multiset of records.",null,null],[0,"least_upper_bound","differential_dataflow::collection","Partially ordered elements with a least upper bound.",null,null],[5,"close_under_lub","differential_dataflow::collection::least_upper_bound","Extends `vector` to contain all least upper bounds of pairs of elements.",null,{"inputs":[{"name":"vec"}],"output":null}],[8,"LeastUpperBound","","Partially ordered elements with a least upper bound.",null,null],[10,"max","","A maximum value for the type.",1,{"inputs":[],"output":{"name":"self"}}],[10,"least_upper_bound","","The least element greater or equal to each argument.",1,null],[0,"lookup","differential_dataflow::collection","A trait for maps from `K` to `V` and implementations.",null,null],[8,"Lookup","differential_dataflow::collection::lookup","A map from `K` to `V`.",null,null],[10,"get_ref","","Recovers a reference to the value associated with a key.",2,null],[10,"get_mut","","Recovers a mutable referecne to the value associated with a key.",2,null],[10,"entry_or_insert","","Recovers a mutable reference, inserting a new value if absent.",2,null],[10,"remove_key","","Removes the key and returns its value if it exists.",2,null],[0,"trace","differential_dataflow::collection","A generic storage interface for differential collection traces.",null,null],[6,"CollectionIterator","differential_dataflow::collection::trace","An iterator over weighted values.",null,null],[8,"Trace","","A collection trace, corresponding to quadruples `(Key, Index, Value, Delta)`.",null,null],[16,"Key","","The data-parallel key.",3,null],[16,"Index","","Timestamp for changes to the collection.",3,null],[16,"Value","","Values associated with each key.",3,null],[10,"set_difference","","Introduces differences in `accumulation` at `time`.",3,null],[11,"trace","","Iterates over times and differences for a specified key.",3,null],[11,"get_difference","","Iterates over differences for a specified key and time.",3,null],[11,"get_collection","","Accumulates differences for `key` at times less than or equal to `time`.",3,null],[11,"interesting_times","","Populates `stash` with times for key, closes under least upper bound.",3,null],[8,"TraceRef","","A reference to a `Trace` with a bound lifetime `'a`.",null,null],[16,"VIterator","","Iterator over references to values.",4,null],[16,"TIterator","","Iterator over times and `VIterator`s.",4,null],[10,"trace","","Iterates over differences associated with the key.",4,null],[0,"compact","differential_dataflow::collection","Accumulator of `(key, val, wgt)` triples based on sorting and run-length encoding.",null,null],[3,"Compact","differential_dataflow::collection::compact","A compressed representation of the accumulation of `(key, val, wgt)` triples.",null,null],[12,"keys","","An ordered list of the distinct keys.",5,null],[12,"cnts","","Counts for each key indicating the number of corresponding values in `self.vals`.",5,null],[12,"vals","","A list of values, ordered within each key group.",5,null],[3,"CompactSession","","A session for adding one key's worth of updates.",null,null],[11,"fmt","","",5,null],[11,"new","","Constructs a new `Compact` with indicated initial capacities.",5,{"inputs":[{"name":"usize"},{"name":"usize"}],"output":{"name":"compact"}}],[11,"size","","Reports the size in bytes, used elsewhere to determine how much space we should use for\nbuffering uncompressed elements.",5,null],[11,"extend","","Populates the `Compact` from an iterator of ordered `(key, val, wgt)` triples.",5,null],[11,"extend_by","","Extends the compact collection by a set of key-value updates.",5,null],[11,"from_radix","","Extends the compact collection from the result of a timely_sort radix sorter.",5,{"inputs":[{"name":"vec"},{"name":"f"}],"output":{"name":"option"}}],[11,"session","","Creates a new session for introducing one key's worth of values.",5,null],[11,"push","","Pushes updates for a key from a supplied iterator.",5,null],[11,"new","","Allocates a new session.",6,{"inputs":[{"name":"compact"}],"output":{"name":"compactsession"}}],[11,"push","","Adds an update for the key.",6,null],[11,"done","","Consumes the session and finalizes the updates.",6,null],[0,"trie","differential_dataflow::collection","A trie representation of `(key, time, value, weight)` tuples, and routines to merge them.",null,null],[3,"Trie","differential_dataflow::collection::trie","A collection of `(K, T, V, W)` tuples, grouped by `K` then `T` then `V`.",null,null],[12,"keys","","Pairs of key and offset into `self.idxs`. Sorted by `key`.",7,null],[12,"idxs","","Pairs of idx and offset into `self.vals`. Sorted by `idx`",7,null],[12,"vals","","Pairs of val and weight. Sorted by `val`.",7,null],[12,"times","","Pairs of timestamp and the number of references to the timestamp.",7,null],[3,"Merge","","A merge-in-progress of two instances of `Trie<K, T, V>`.",null,null],[6,"W","","Changes to frequencies.",null,null],[11,"eq","","",7,null],[11,"ne","","",7,null],[11,"fmt","","",7,null],[11,"new","","Constructs a new `Trie` containing no data.",7,{"inputs":[],"output":{"name":"trie"}}],[11,"with_capacities","","Allocates a new `Trie` with initial capacities for `keys`, `idxs`, and `vals`.",7,{"inputs":[{"name":"usize"},{"name":"usize"},{"name":"usize"}],"output":{"name":"trie"}}],[11,"len","","Returns the number of tuples represented by `Self`.",7,null],[11,"new","","Constructs a new `Merge` from two instances of `Teir` and a function advancing timestamps.",8,{"inputs":[{"name":"rc"},{"name":"rc"},{"name":"f"}],"output":{"name":"merge"}}],[11,"step","","Advances the `Merge` by one step, returning the merged Tries if it is now complete.",8,null],[0,"count","differential_dataflow::collection","Like `Count` but with the value type specialized to `()`.",null,null],[3,"Offset","differential_dataflow::collection::count","An opaque offset into internal storage.",null,null],[3,"Count","","A trace specialized for the value type `()`.",null,null],[3,"CountIterator","","Enumerates pairs of time `&T` and `i32`.",null,null],[3,"WeightIterator","","An iterator over weighted references to `()`.",null,null],[11,"set_difference","","Installs a supplied set of keys and values as the differences for `time`.",9,null],[11,"fmt","","",10,null],[11,"clone","","",10,null],[11,"get_count","","Recovers the count for the `()` value for a key at a time.",9,null],[11,"new","","Allocates a new `Count` from a supplied lookup.",9,{"inputs":[{"name":"l"}],"output":{"name":"count"}}],[11,"clone","","",11,null],[11,"next","","",11,null],[11,"next","","",12,null],[0,"robin_hood","differential_dataflow::collection","A Robin Hood hash map.",null,null],[3,"RHHMap","differential_dataflow::collection::robin_hood","A Robin Hood hash map.",null,null],[5,"get_ref","","Returns either a shared reference to the value associated with `query`, or `None` if no value exists.",null,null],[5,"get_mut","","Returns either an exclusive reference to the value associated with `query`, or `None` if no value exists.",null,null],[5,"insert","","Returns either the previous `(key,val)` pair for `key`, or `Err((key,val))` if `slice` does not have enough room to insert it.",null,null],[5,"remove","","Returns either the `(key,val)` pair associated with `key`, or `None` if it does not exist.",null,null],[11,"new","","Allocates a new Robin Hood hash map.",13,{"inputs":[{"name":"f"}],"output":{"name":"rhhmap"}}],[11,"capacity","","The capacity of the underlying storage.",13,null],[11,"get_ref","","Get a reference to the value associated with a queried key.",13,null],[11,"get_mut","","Get a mutable reference to the value associated with a queried key.",13,null],[11,"insert","","Insert a key, value pair, recovering any pre-existing key, value pair.",13,null],[11,"remove","","Removes a key, recovering the key, value pair.",13,null],[0,"basic","differential_dataflow::collection","A basic collection trace.",null,null],[3,"BasicTrace","differential_dataflow::collection::basic","A collection of values indexed by `key` and `time`.",null,null],[3,"Offset","","An opaque offset into internal storage.",null,null],[3,"TraceIterator","","Enumerates pairs of time `&T` and `DifferenceIterator<V>` of `(&V, i32)` elements.",null,null],[3,"DifferenceIterator","","Enumerates `(&V,i32)` elements of a difference.",null,null],[11,"set_difference","","",14,null],[11,"fmt","","",15,null],[11,"clone","","",15,null],[11,"new","","Allocates a new basic trace.",14,{"inputs":[{"name":"l"}],"output":{"name":"basictrace"}}],[11,"clone","","",16,null],[11,"next","","",16,null],[11,"clone","","",17,null],[11,"next","","",17,null],[0,"operators","differential_dataflow","Timely dataflow operators specific to differential dataflow.",null,null],[0,"arrange","differential_dataflow::operators","The `arrange` operator is used internally by differential to arrange a collection of (key,val)\ndata by key, and present an Rc<Trace<..>> to other operators that need the data ArrangedByKey this way.",null,null],[3,"Arranged","differential_dataflow::operators::arrange","A collection of `(K,V)` values as a timely stream and shared trace.",null,null],[12,"stream","","A stream containing arranged updates.",18,null],[12,"trace","","A shared trace, updated by the `Arrange` operator and readable by others.",18,null],[8,"ArrangeByKey","","Arranges something as `(Key,Val)` pairs.",null,null],[10,"arrange_by_key","","Arranges a stream of `(Key, Val)` updates by `Key`.",19,null],[8,"ArrangeBySelf","","Arranges something as `(Key,())` pairs, logically by `Key`.",null,null],[10,"arrange_by_self","","Arranges a stream of `(Key, ()))` updates by `Key`.",20,null],[11,"as_collection","","Flattens the stream into a `Collection`.",18,null],[11,"arrange_by_key","differential_dataflow","",0,null],[11,"arrange_by_self","","",0,null],[0,"threshold","differential_dataflow::operators","An operator acting on `(Key, ())` collections.",null,null],[8,"Threshold","differential_dataflow::operators::threshold","Extension trait for the `threshold` differential dataflow method",null,null],[10,"threshold","","Groups records by their first field, and applies reduction logic to the associated values.",21,null],[11,"distinct","","Collects distinct elements.",21,null],[8,"ThresholdUnsigned","","Extension trait for the `group_u` differential dataflow method.",null,null],[10,"threshold_u","","Groups records by their first field, when this field implements `Unsigned`.",22,null],[11,"distinct_u","","Collects distinct elements, when they implement `Unsigned`.",22,null],[8,"ThresholdArranged","","Extension trait for the `group` operator on `Arrange<_>` data.",null,null],[10,"threshold","","Groups arranged data using a key hash function, a lookup generator, and user logic.",23,null],[11,"threshold","differential_dataflow","",0,null],[11,"threshold_u","","",0,null],[11,"threshold","differential_dataflow::operators::arrange","",18,null],[0,"group","differential_dataflow::operators","Group records by a key, and apply a reduction function.",null,null],[8,"Group","differential_dataflow::operators::group","Extension trait for the `group` differential dataflow method",null,null],[10,"group","","Groups records by their first field, and applies reduction logic to the associated values.",24,null],[8,"Count","","Counts the number of occurrences of each element.",null,null],[10,"count","","Counts the number of occurrences of each element.",25,null],[8,"GroupUnsigned","","Extension trait for the `group_u` differential dataflow method.",null,null],[10,"group_u","","Groups records by their first field, when this field implements `Unsigned`.",26,null],[8,"CountUnsigned","","Counts the number of occurrences of each unsigned element.",null,null],[10,"count_u","","Counts the number of occurrences of each unsigned element.",27,null],[8,"GroupArranged","","Extension trait for the `group` operator on `Arrange<_>` data.",null,null],[10,"group","","Groups arranged data using a key hash function, a lookup generator, and user logic.",28,null],[11,"group","differential_dataflow","",0,null],[11,"count","","",0,null],[11,"group_u","","",0,null],[11,"count_u","","",0,null],[11,"group","differential_dataflow::operators::arrange","",18,null],[0,"consolidate","differential_dataflow::operators","Aggregates the weights of equal records into at most one record.",null,null],[8,"ConsolidateExt","differential_dataflow::operators::consolidate","An extension method for consolidating weighted streams.",null,null],[10,"consolidate","","Aggregates the weights of equal records into at most one record.",29,null],[10,"consolidate_by","","Aggregates the weights of equal records into at most one record, partitions the\ndata using the supplied partition function.",29,null],[11,"consolidate","differential_dataflow","",0,null],[11,"consolidate_by","","",0,null],[0,"iterate","differential_dataflow::operators","Iterative application of a differential dataflow fragment.",null,null],[3,"Variable","differential_dataflow::operators::iterate","A differential dataflow collection variable",null,null],[8,"IterateExt","","An extension trait for the `iterate` method.",null,null],[10,"iterate","","Iteratively apply `logic` to the source collection until convergence.",30,null],[11,"iterate","differential_dataflow","",0,null],[11,"from","differential_dataflow::operators::iterate","Creates a new `Variable` and a `Stream` representing its output, from a supplied `source` stream.",31,{"inputs":[{"name":"collection"}],"output":{"name":"variable"}}],[11,"set","","Adds a new source of data to the `Variable`.",31,null],[11,"deref","","",31,null],[0,"join","differential_dataflow::operators","Match pairs of records based on a key.",null,null],[8,"Join","differential_dataflow::operators::join","Join implementations for `(key,val)` data.",null,null],[11,"join","","Matches pairs `(key,val1)` and `(key,val2)` based on `key`.",32,null],[10,"join_map","","Matches pairs `(key,val1)` and `(key,val2)` based on `key` and then applies a function.",32,null],[10,"semijoin","","Matches pairs `(key,val1)` and `key` based on `key`, filtering the first collection by values present in the second.",32,null],[8,"JoinUnsigned","","Matches pairs `(key, val1)` and `(key, val2)` for dense unsigned integer keys.",null,null],[11,"join_u","","Joins two collections with dense unsigned integer keys.",33,null],[10,"join_map_u","","Joins two collections with dense unsigned integer keys and then applies a map function.",33,null],[10,"semijoin_u","","Semijoins a collection with dense unsigned integer keys against a set of such keys.",33,null],[8,"JoinArranged","","Matches the elements of two arranged traces.",null,null],[10,"join","","Joins two arranged collections with the same key type.",34,null],[11,"join_map","differential_dataflow","Matches pairs of `(key,val1)` and `(key,val2)` records based on `key` and applies a reduction function.",0,null],[11,"semijoin","","",0,null],[11,"join_map_u","","",0,null],[11,"semijoin_u","","",0,null],[11,"join","differential_dataflow::operators::arrange","",18,null],[11,"clone","differential_dataflow","",0,null],[11,"new","","Creates a new collection from a timely dataflow stream.",0,{"inputs":[{"name":"stream"}],"output":{"name":"collection"}}],[11,"map","","Applies the supplied function to each element of the collection.",0,null],[11,"map_in_place","","Applies the supplied function to each element of the collection, re-using allocated memory.",0,null],[11,"flat_map","","Applies the supplied function to each element of the collection.",0,null],[11,"negate","","Negates the counts of each element in the collection.",0,null],[11,"filter","","Retains only the elements of the collection satisifying the supplied predicate.",0,null],[11,"concat","","Adds the counts of elements from each collection.",0,null],[11,"enter","","Brings a collection into a nested scope.",0,null],[11,"enter_at","","Brings a collection into a nested scope, at varying times.",0,null],[11,"inspect","","Applies a supplied function to each update. Diagnostic.",0,null],[11,"inspect_batch","","Applies a supplied function to each batch of updates. Diagnostic.",0,null],[11,"probe","","Attaches a timely dataflow probe to the output of a collection.",0,null],[11,"scope","","The scope containing the underlying timely dataflow stream.",0,null],[11,"leave","","Returns the final value of a collection from a nested scope to its containing scope.",0,null],[6,"Delta","","A change in count.",null,null],[8,"AsCollection","","Conversion to a differential dataflow collection.",null,null],[10,"as_collection","","Conversion to a differential dataflow collection.",35,null],[8,"Data","","A composite trait for data types usable in differential dataflow.",null,null],[11,"hashed","","Extracts a `u64` suitable for distributing and sorting the data.",36,null],[8,"TestScope","","An extension of timely's `Scope` trait requiring timestamps implement `LeastUpperBound`.",null,null],[11,"get_ref","differential_dataflow::collection::robin_hood","",13,null],[11,"get_mut","","",13,null],[11,"entry_or_insert","","",13,null],[11,"remove_key","","",13,null]],"paths":[[3,"Collection"],[8,"LeastUpperBound"],[8,"Lookup"],[8,"Trace"],[8,"TraceRef"],[3,"Compact"],[3,"CompactSession"],[3,"Trie"],[3,"Merge"],[3,"Count"],[3,"Offset"],[3,"CountIterator"],[3,"WeightIterator"],[3,"RHHMap"],[3,"BasicTrace"],[3,"Offset"],[3,"TraceIterator"],[3,"DifferenceIterator"],[3,"Arranged"],[8,"ArrangeByKey"],[8,"ArrangeBySelf"],[8,"Threshold"],[8,"ThresholdUnsigned"],[8,"ThresholdArranged"],[8,"Group"],[8,"Count"],[8,"GroupUnsigned"],[8,"CountUnsigned"],[8,"GroupArranged"],[8,"ConsolidateExt"],[8,"IterateExt"],[3,"Variable"],[8,"Join"],[8,"JoinUnsigned"],[8,"JoinArranged"],[8,"AsCollection"],[8,"Data"]]}; initSearch(searchIndex);