Struct mz_catalog::memory::objects::CatalogEntry
source · pub struct CatalogEntry {
pub item: CatalogItem,
pub referenced_by: Vec<CatalogItemId>,
pub used_by: Vec<CatalogItemId>,
pub id: CatalogItemId,
pub oid: u32,
pub name: QualifiedItemName,
pub owner_id: RoleId,
pub privileges: PrivilegeMap,
}
Fields§
§item: CatalogItem
§referenced_by: Vec<CatalogItemId>
§used_by: Vec<CatalogItemId>
§id: CatalogItemId
§oid: u32
§name: QualifiedItemName
§owner_id: RoleId
§privileges: PrivilegeMap
Implementations§
source§impl CatalogEntry
impl CatalogEntry
sourcepub fn desc(
&self,
name: &FullItemName,
) -> Result<Cow<'_, RelationDesc>, SqlCatalogError>
pub fn desc( &self, name: &FullItemName, ) -> Result<Cow<'_, RelationDesc>, SqlCatalogError>
Like CatalogEntry::desc_opt
, but returns an error if the catalog
entry is not of a type that has a description.
sourcepub fn desc_opt(&self) -> Option<Cow<'_, RelationDesc>>
pub fn desc_opt(&self) -> Option<Cow<'_, RelationDesc>>
Reports the description of the rows produced by this catalog entry, if this catalog entry produces rows.
sourcepub fn has_columns(&self) -> bool
pub fn has_columns(&self) -> bool
Reports if the item has columns.
sourcepub fn func(&self) -> Result<&'static Func, SqlCatalogError>
pub fn func(&self) -> Result<&'static Func, SqlCatalogError>
Returns the mz_sql::func::Func
associated with this CatalogEntry
.
sourcepub fn index(&self) -> Option<&Index>
pub fn index(&self) -> Option<&Index>
Returns the inner Index
if this entry is an index, else None
.
sourcepub fn materialized_view(&self) -> Option<&MaterializedView>
pub fn materialized_view(&self) -> Option<&MaterializedView>
Returns the inner MaterializedView
if this entry is a materialized view, else None
.
sourcepub fn table(&self) -> Option<&Table>
pub fn table(&self) -> Option<&Table>
Returns the inner Table
if this entry is a table, else None
.
sourcepub fn source(&self) -> Option<&Source>
pub fn source(&self) -> Option<&Source>
Returns the inner Source
if this entry is a source, else None
.
sourcepub fn secret(&self) -> Option<&Secret>
pub fn secret(&self) -> Option<&Secret>
Returns the inner Secret
if this entry is a secret, else None
.
pub fn connection(&self) -> Result<&Connection, SqlCatalogError>
sourcepub fn source_desc(
&self,
) -> Result<Option<&SourceDesc<ReferencedConnection>>, SqlCatalogError>
pub fn source_desc( &self, ) -> Result<Option<&SourceDesc<ReferencedConnection>>, SqlCatalogError>
Returns the mz_storage_types::sources::SourceDesc
associated with
this CatalogEntry
, if any.
sourcepub fn is_connection(&self) -> bool
pub fn is_connection(&self) -> bool
Reports whether this catalog entry is a connection.
sourcepub fn is_source(&self) -> bool
pub fn is_source(&self) -> bool
Reports whether this catalog entry is a source. Note that this includes subsources.
sourcepub fn subsource_details(
&self,
) -> Option<(CatalogItemId, &UnresolvedItemName, &SourceExportDetails)>
pub fn subsource_details( &self, ) -> Option<(CatalogItemId, &UnresolvedItemName, &SourceExportDetails)>
Reports whether this catalog entry is a subsource and, if it is, the ingestion it is an export of, as well as the item it exports.
sourcepub fn source_export_details(
&self,
) -> Option<(CatalogItemId, &UnresolvedItemName, &SourceExportDetails, &SourceExportDataConfig<ReferencedConnection>)>
pub fn source_export_details( &self, ) -> Option<(CatalogItemId, &UnresolvedItemName, &SourceExportDetails, &SourceExportDataConfig<ReferencedConnection>)>
Reports whether this catalog entry is a source export and, if it is, the ingestion it is an export of, as well as the item it exports.
sourcepub fn is_progress_source(&self) -> bool
pub fn is_progress_source(&self) -> bool
Reports whether this catalog entry is a progress source.
sourcepub fn progress_id(&self) -> Option<CatalogItemId>
pub fn progress_id(&self) -> Option<CatalogItemId>
Returns the GlobalId
of all of this entry’s progress ID.
sourcepub fn is_materialized_view(&self) -> bool
pub fn is_materialized_view(&self) -> bool
Reports whether this catalog entry is a materialized view.
sourcepub fn is_introspection_source(&self) -> bool
pub fn is_introspection_source(&self) -> bool
Reports whether this catalog entry is an introspection source.
sourcepub fn is_continual_task(&self) -> bool
pub fn is_continual_task(&self) -> bool
Reports whether this catalog entry is a continual task.
sourcepub fn is_relation(&self) -> bool
pub fn is_relation(&self) -> bool
Reports whether this catalog entry can be treated as a relation, it can produce rows.
sourcepub fn references(&self) -> &ResolvedIds
pub fn references(&self) -> &ResolvedIds
Collects the identifiers of the objects that were encountered when resolving names in the item’s DDL statement.
sourcepub fn uses(&self) -> BTreeSet<CatalogItemId>
pub fn uses(&self) -> BTreeSet<CatalogItemId>
Collects the identifiers of the objects used by this CatalogEntry
.
Like CatalogEntry::references()
but also includes objects that are not directly
referenced. For example this will include any catalog objects used to implement functions
and casts in the item.
sourcepub fn item(&self) -> &CatalogItem
pub fn item(&self) -> &CatalogItem
Returns the CatalogItem
associated with this catalog entry.
sourcepub fn id(&self) -> CatalogItemId
pub fn id(&self) -> CatalogItemId
Returns the CatalogItemId
of this catalog entry.
sourcepub fn global_ids(&self) -> impl Iterator<Item = GlobalId> + '_
pub fn global_ids(&self) -> impl Iterator<Item = GlobalId> + '_
Returns all of the GlobalId
s associated with this item.
pub fn latest_global_id(&self) -> GlobalId
sourcepub fn name(&self) -> &QualifiedItemName
pub fn name(&self) -> &QualifiedItemName
Returns the fully qualified name of this catalog entry.
sourcepub fn referenced_by(&self) -> &[CatalogItemId]
pub fn referenced_by(&self) -> &[CatalogItemId]
Returns the identifiers of the dataflows that are directly referenced by this dataflow.
sourcepub fn used_by(&self) -> &[CatalogItemId]
pub fn used_by(&self) -> &[CatalogItemId]
Returns the identifiers of the dataflows that depend upon this dataflow.
sourcepub fn conn_id(&self) -> Option<&ConnectionId>
pub fn conn_id(&self) -> Option<&ConnectionId>
Returns the connection ID that this item belongs to, if this item is temporary.
sourcepub fn privileges(&self) -> &PrivilegeMap
pub fn privileges(&self) -> &PrivilegeMap
Returns the privileges of the entry.
Trait Implementations§
source§impl CatalogItem for CatalogEntry
impl CatalogItem for CatalogEntry
source§fn name(&self) -> &QualifiedItemName
fn name(&self) -> &QualifiedItemName
source§fn id(&self) -> CatalogItemId
fn id(&self) -> CatalogItemId
CatalogItemId
for the item.source§fn global_ids(&self) -> Box<dyn Iterator<Item = GlobalId> + '_>
fn global_ids(&self) -> Box<dyn Iterator<Item = GlobalId> + '_>
GlobalId
s associated with this item.source§fn func(&self) -> Result<&'static Func, SqlCatalogError>
fn func(&self) -> Result<&'static Func, SqlCatalogError>
source§fn source_desc(
&self,
) -> Result<Option<&SourceDesc<ReferencedConnection>>, SqlCatalogError>
fn source_desc( &self, ) -> Result<Option<&SourceDesc<ReferencedConnection>>, SqlCatalogError>
source§fn connection(
&self,
) -> Result<Connection<ReferencedConnection>, SqlCatalogError>
fn connection( &self, ) -> Result<Connection<ReferencedConnection>, SqlCatalogError>
source§fn create_sql(&self) -> &str
fn create_sql(&self) -> &str
source§fn item_type(&self) -> SqlCatalogItemType
fn item_type(&self) -> SqlCatalogItemType
source§fn index_details(&self) -> Option<(&[MirScalarExpr], GlobalId)>
fn index_details(&self) -> Option<(&[MirScalarExpr], GlobalId)>
source§fn writable_table_details(&self) -> Option<&[Expr<Aug>]>
fn writable_table_details(&self) -> Option<&[Expr<Aug>]>
source§fn type_details(&self) -> Option<&CatalogTypeDetails<IdReference>>
fn type_details(&self) -> Option<&CatalogTypeDetails<IdReference>>
source§fn references(&self) -> &ResolvedIds
fn references(&self) -> &ResolvedIds
source§fn uses(&self) -> BTreeSet<CatalogItemId>
fn uses(&self) -> BTreeSet<CatalogItemId>
source§fn referenced_by(&self) -> &[CatalogItemId]
fn referenced_by(&self) -> &[CatalogItemId]
source§fn used_by(&self) -> &[CatalogItemId]
fn used_by(&self) -> &[CatalogItemId]
source§fn subsource_details(
&self,
) -> Option<(CatalogItemId, &UnresolvedItemName, &SourceExportDetails)>
fn subsource_details( &self, ) -> Option<(CatalogItemId, &UnresolvedItemName, &SourceExportDetails)>
source§fn source_export_details(
&self,
) -> Option<(CatalogItemId, &UnresolvedItemName, &SourceExportDetails, &SourceExportDataConfig<ReferencedConnection>)>
fn source_export_details( &self, ) -> Option<(CatalogItemId, &UnresolvedItemName, &SourceExportDetails, &SourceExportDataConfig<ReferencedConnection>)>
source§fn is_progress_source(&self) -> bool
fn is_progress_source(&self) -> bool
source§fn progress_id(&self) -> Option<CatalogItemId>
fn progress_id(&self) -> Option<CatalogItemId>
source§fn privileges(&self) -> &PrivilegeMap
fn privileges(&self) -> &PrivilegeMap
source§fn cluster_id(&self) -> Option<ClusterId>
fn cluster_id(&self) -> Option<ClusterId>
source§fn at_version(
&self,
version: RelationVersionSelector,
) -> Box<dyn CatalogCollectionItem>
fn at_version( &self, version: RelationVersionSelector, ) -> Box<dyn CatalogCollectionItem>
CatalogCollectionItem
for a specific version of this
CatalogItem
.source§impl Clone for CatalogEntry
impl Clone for CatalogEntry
source§fn clone(&self) -> CatalogEntry
fn clone(&self) -> CatalogEntry
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for CatalogEntry
impl Debug for CatalogEntry
source§impl From<CatalogEntry> for Item
impl From<CatalogEntry> for Item
source§fn from(entry: CatalogEntry) -> Item
fn from(entry: CatalogEntry) -> Item
source§impl From<CatalogEntry> for TemporaryItem
impl From<CatalogEntry> for TemporaryItem
source§fn from(entry: CatalogEntry) -> Self
fn from(entry: CatalogEntry) -> Self
Auto Trait Implementations§
impl Freeze for CatalogEntry
impl !RefUnwindSafe for CatalogEntry
impl Send for CatalogEntry
impl Sync for CatalogEntry
impl Unpin for CatalogEntry
impl !UnwindSafe for CatalogEntry
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<T> FmtForward for T
impl<T> FmtForward for T
source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self
to use its Binary
implementation when Debug
-formatted.source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self
to use its Display
implementation when
Debug
-formatted.source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self
to use its LowerExp
implementation when
Debug
-formatted.source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self
to use its LowerHex
implementation when
Debug
-formatted.source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self
to use its Octal
implementation when Debug
-formatted.source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self
to use its Pointer
implementation when
Debug
-formatted.source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self
to use its UpperExp
implementation when
Debug
-formatted.source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self
to use its UpperHex
implementation when
Debug
-formatted.source§impl<T> FutureExt for T
impl<T> FutureExt for T
source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request
source§impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moresource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moresource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self
, then passes self.as_ref()
into the pipe function.source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self
, then passes self.as_mut()
into the pipe
function.source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self
, then passes self.deref()
into the pipe function.source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> ProgressEventTimestamp for T
impl<T> ProgressEventTimestamp for T
source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
RustType::from_proto
.source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
RustType::into_proto
.source§impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
source§fn plus_equals(&mut self, rhs: &&'a S)
fn plus_equals(&mut self, rhs: &&'a S)
std::ops::AddAssign
, for types that do not implement AddAssign
.source§impl<T> Serialize for T
impl<T> Serialize for T
fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<Ok, Error>
source§impl<T> Tap for T
impl<T> Tap for T
source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B>
of a value. Read moresource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B>
of a value. Read moresource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R>
view of a value. Read moresource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R>
view of a value. Read moresource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target
of a value. Read moresource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target
of a value. Read moresource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds.source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow()
only in debug builds, and is erased in release
builds.source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref()
only in debug builds, and is erased in release
builds.source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut()
only in debug builds, and is erased in release
builds.source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref()
only in debug builds, and is erased in release
builds.