@@ -79,7 +79,7 @@ use crate::progress::Timestamp;
7979use crate :: progress:: { Source , Target } ;
8080use crate :: progress:: ChangeBatch ;
8181use crate :: progress:: { Location , Port } ;
82-
82+ use crate :: progress :: operate :: Connectivity ;
8383use crate :: progress:: frontier:: { Antichain , MutableAntichain } ;
8484use crate :: progress:: timestamp:: PathSummary ;
8585
@@ -132,7 +132,7 @@ pub struct Builder<T: Timestamp> {
132132 /// Indexed by operator index, then input port, then output port. This is the
133133 /// same format returned by `get_internal_summary`, as if we simply appended
134134 /// all of the summaries for the hosted nodes.
135- pub nodes : Vec < Vec < Vec < Antichain < T :: Summary > > > > ,
135+ pub nodes : Vec < Connectivity < T :: Summary > > ,
136136 /// Direct connections from sources to targets.
137137 ///
138138 /// Edges do not affect timestamps, so we only need to know the connectivity.
@@ -156,7 +156,7 @@ impl<T: Timestamp> Builder<T> {
156156 /// Add links internal to operators.
157157 ///
158158 /// This method overwrites any existing summary, instead of anything more sophisticated.
159- pub fn add_node ( & mut self , index : usize , inputs : usize , outputs : usize , summary : Vec < Vec < Antichain < T :: Summary > > > ) {
159+ pub fn add_node ( & mut self , index : usize , inputs : usize , outputs : usize , summary : Connectivity < T :: Summary > ) {
160160
161161 // Assert that all summaries exist.
162162 debug_assert_eq ! ( inputs, summary. len( ) ) ;
@@ -195,7 +195,7 @@ impl<T: Timestamp> Builder<T> {
195195 /// default summaries (a serious liveness issue).
196196 ///
197197 /// The optional logger information is baked into the resulting tracker.
198- pub fn build ( self , logger : Option < logging:: TrackerLogger < T > > ) -> ( Tracker < T > , Vec < Vec < Antichain < T :: Summary > > > ) {
198+ pub fn build ( self , logger : Option < logging:: TrackerLogger < T > > ) -> ( Tracker < T > , Connectivity < T :: Summary > ) {
199199
200200 if !self . is_acyclic ( ) {
201201 println ! ( "Cycle detected without timestamp increment" ) ;
@@ -361,7 +361,7 @@ pub struct Tracker<T:Timestamp> {
361361 /// Indexed by operator index, then input port, then output port. This is the
362362 /// same format returned by `get_internal_summary`, as if we simply appended
363363 /// all of the summaries for the hosted nodes.
364- nodes : Vec < Vec < Vec < Antichain < T :: Summary > > > > ,
364+ nodes : Vec < Connectivity < T :: Summary > > ,
365365 /// Direct connections from sources to targets.
366366 ///
367367 /// Edges do not affect timestamps, so we only need to know the connectivity.
@@ -503,7 +503,7 @@ impl<T:Timestamp> Tracker<T> {
503503 /// output port.
504504 ///
505505 /// If the optional logger is provided, it will be used to log various tracker events.
506- pub fn allocate_from ( builder : Builder < T > , logger : Option < logging:: TrackerLogger < T > > ) -> ( Self , Vec < Vec < Antichain < T :: Summary > > > ) {
506+ pub fn allocate_from ( builder : Builder < T > , logger : Option < logging:: TrackerLogger < T > > ) -> ( Self , Connectivity < T :: Summary > ) {
507507
508508 // Allocate buffer space for each input and input port.
509509 let mut per_operator =
@@ -732,7 +732,7 @@ impl<T:Timestamp> Tracker<T> {
732732/// Graph locations may be missing from the output, in which case they have no
733733/// paths to scope outputs.
734734fn summarize_outputs < T : Timestamp > (
735- nodes : & [ Vec < Vec < Antichain < T :: Summary > > > ] ,
735+ nodes : & [ Connectivity < T :: Summary > ] ,
736736 edges : & [ Vec < Vec < Target > > ] ,
737737 ) -> HashMap < Location , Vec < Antichain < T :: Summary > > >
738738{
0 commit comments