pub trait InstantiationContext {
// Required methods
fn collection_type(&self, id: GlobalId) -> Option<SqlRelationType>;
fn index(&self, id: GlobalId) -> Option<IndexInfo>;
fn materialized_view(&self, id: GlobalId) -> Option<MaterializedViewInfo>;
fn metric_sink(&self, id: GlobalId) -> Option<MetricSinkInfo>;
fn allocate_transient_id(&self) -> GlobalId;
}Expand description
What PinnedDataflow::instantiate needs from its environment: catalog
facts about the plan’s imports and exports, looked up by id, and fresh
transient ids. Each lookup returns None when no item of that kind exists.
Required Methods§
Sourcefn collection_type(&self, id: GlobalId) -> Option<SqlRelationType>
fn collection_type(&self, id: GlobalId) -> Option<SqlRelationType>
The relation type of the storage collection id, as the optimizer
imports it.
Sourcefn materialized_view(&self, id: GlobalId) -> Option<MaterializedViewInfo>
fn materialized_view(&self, id: GlobalId) -> Option<MaterializedViewInfo>
The materialized view whose sink is exported under id.
Sourcefn metric_sink(&self, id: GlobalId) -> Option<MetricSinkInfo>
fn metric_sink(&self, id: GlobalId) -> Option<MetricSinkInfo>
The metric sink exported under id.
Sourcefn allocate_transient_id(&self) -> GlobalId
fn allocate_transient_id(&self) -> GlobalId
A transient id no other dataflow in this process uses.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".