pub enum IrError {
Show 18 variants
InvalidIdentifier(String),
InvalidColumnType(String),
MissingField(&'static str),
EmptyPublication(Identifier),
EmptyColumnList(Identifier, QualifiedName),
EmptyPublishBitset(Identifier),
DuplicateColumnInPublication(Identifier, QualifiedName, Identifier),
EmptySubscriptionPublications(Identifier),
EmptyConnection(Identifier),
EmptyStatisticKinds(QualifiedName),
EmptyStatisticColumns(QualifiedName),
DuplicateEventTrigger(Identifier),
DuplicateAggregate(QualifiedName),
DuplicateTsDictionary(QualifiedName),
DuplicateTsConfiguration(QualifiedName),
DuplicateCast {
src: QualifiedName,
tgt: QualifiedName,
},
DuplicateTablespace(Identifier),
InvalidCollation {
qname: QualifiedName,
reason: String,
},
}Expand description
Errors raised when constructing IR values.
Variants§
InvalidIdentifier(String)
An identifier did not satisfy validation rules.
InvalidColumnType(String)
A type definition was not representable in our IR.
MissingField(&'static str)
A required field was missing or empty.
EmptyPublication(Identifier)
A PublicationScope::Selective had no schemas and no tables.
EmptyColumnList(Identifier, QualifiedName)
A PublishedTable.columns was Some(vec![]).
EmptyPublishBitset(Identifier)
A PublishKinds had all four DML flags false.
DuplicateColumnInPublication(Identifier, QualifiedName, Identifier)
A PublishedTable.columns contained a duplicate column name.
EmptySubscriptionPublications(Identifier)
A Subscription.publications was empty.
EmptyConnection(Identifier)
A Subscription.connection was empty or whitespace-only.
EmptyStatisticKinds(QualifiedName)
A StatisticKinds had all three flags false.
EmptyStatisticColumns(QualifiedName)
A Statistic.columns was empty.
DuplicateEventTrigger(Identifier)
Two event triggers share a name.
DuplicateAggregate(QualifiedName)
Two aggregates share the same (qname, arg_types) overload identity.
DuplicateTsDictionary(QualifiedName)
Two TEXT SEARCH DICTIONARY objects share the same qname.
DuplicateTsConfiguration(QualifiedName)
Two TEXT SEARCH CONFIGURATION objects share the same qname.
DuplicateCast
Two casts share the same (source, target) identity.
Fields
src: QualifiedNameSource type of the duplicate cast.
tgt: QualifiedNameTarget type of the duplicate cast.
DuplicateTablespace(Identifier)
Two tablespaces share a name.
InvalidCollation
A Collation failed canon validation (e.g. nondeterministic libc).
Fields
qname: QualifiedNameSchema-qualified collation name.
Trait Implementations§
Source§impl Error for IrError
impl Error for IrError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<IrError> for CatalogError
impl From<IrError> for CatalogError
Auto Trait Implementations§
impl Freeze for IrError
impl RefUnwindSafe for IrError
impl Send for IrError
impl Sync for IrError
impl Unpin for IrError
impl UnsafeUnpin for IrError
impl UnwindSafe for IrError
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more