MCPcopy Create free account
hub / github.com/MaterializeInc/materialize / give

Method give

src/timely-util/src/builder_async.rs:241–260  ·  view source on GitHub ↗

Provides data at the time specified by the capability. Flushes automatically when the capability time changes.

(&mut self, cap: &Capability<T>, data: D)

Source from the content-addressed store, hash-verified

239 /// Provides data at the time specified by the capability. Flushes automatically when the
240 /// capability time changes.
241 fn give<D>(&mut self, cap: &Capability<T>, data: D)
242 where
243 CB: PushInto<D>,
244 {
245 if let Some(capability) = &self.capability
246 && cap.time() != capability.time()
247 {
248 self.flush();
249 self.capability = None;
250 }
251 if self.capability.is_none() {
252 self.capability = Some(cap.clone());
253 }
254
255 self.builder.push_into(data);
256 while let Some(container) = self.builder.extract() {
257 self.output
258 .give(self.capability.as_ref().expect("must exist"), container);
259 }
260 }
261}
262
263pub struct AsyncOutputHandle<T: Timestamp, CB: ContainerBuilder> {

Callers 15

bench_reclock_simpleFunction · 0.45
flat_map_fallibleMethod · 0.45
ensure_monotonicMethod · 0.45
consolidate_named_ifMethod · 0.45
consolidate_namedMethod · 0.45
consolidate_pactFunction · 0.45
flushMethod · 0.45
give_containerMethod · 0.45
give_fueledMethod · 0.45
build_fallibleMethod · 0.45
async_operatorFunction · 0.45

Calls 7

is_noneMethod · 0.80
expectMethod · 0.80
flushMethod · 0.45
cloneMethod · 0.45
push_intoMethod · 0.45
extractMethod · 0.45
as_refMethod · 0.45

Tested by 1

test_reclock_gh16318Function · 0.36