Enum mentat_db::errors::SchemaConstraintViolation
[−]
[src]
pub enum SchemaConstraintViolation { ConflictingUpserts { conflicting_upserts: BTreeMap<TempId, BTreeSet<KnownEntid>>, }, TypeDisagreements { conflicting_datoms: BTreeMap<(Entid, Entid, TypedValue), ValueType>, }, CardinalityConflicts { conflicts: Vec<CardinalityConflict>, }, }
Variants
ConflictingUpserts
A transaction tried to assert datoms where one tempid upserts to two (or more) distinct entids.
Fields of ConflictingUpserts
conflicting_upserts: BTreeMap<TempId, BTreeSet<KnownEntid>> | A map from tempid to the entids it would upsert to. In the future, we might even be able to attribute the upserts to particular (reduced)
datoms, i.e., to particular |
TypeDisagreements
A transaction tried to assert a datom or datoms with the wrong value v
type(s).
Fields of TypeDisagreements
conflicting_datoms: BTreeMap<(Entid, Entid, TypedValue), ValueType> | The key ( |
CardinalityConflicts
A transaction tried to assert datoms that don't observe the schema's cardinality constraints.
Fields of CardinalityConflicts
conflicts: Vec<CardinalityConflict> |
Trait Implementations
impl Clone for SchemaConstraintViolation
[src]
impl Clone for SchemaConstraintViolation
fn clone(&self) -> SchemaConstraintViolation
[src]
fn clone(&self) -> SchemaConstraintViolation
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl Debug for SchemaConstraintViolation
[src]
impl Debug for SchemaConstraintViolation
fn fmt(&self, __arg_0: &mut Formatter) -> Result
[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl Eq for SchemaConstraintViolation
[src]
impl Eq for SchemaConstraintViolation
impl PartialEq for SchemaConstraintViolation
[src]
impl PartialEq for SchemaConstraintViolation
fn eq(&self, __arg_0: &SchemaConstraintViolation) -> bool
[src]
fn eq(&self, __arg_0: &SchemaConstraintViolation) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &SchemaConstraintViolation) -> bool
[src]
fn ne(&self, __arg_0: &SchemaConstraintViolation) -> bool
This method tests for !=
.
impl Fail for SchemaConstraintViolation
[src]
impl Fail for SchemaConstraintViolation
fn cause(&self) -> Option<&Fail>
[src]
fn cause(&self) -> Option<&Fail>
Returns a reference to the underlying cause of this failure, if it is an error that wraps other errors. Read more
fn backtrace(&self) -> Option<&Backtrace>
[src]
fn backtrace(&self) -> Option<&Backtrace>
Returns a reference to the Backtrace
carried by this failure, if it carries one. Read more
fn context<D>(self, context: D) -> Context<D> where
D: Display + Send + Sync + 'static,
fn context<D>(self, context: D) -> Context<D> where
D: Display + Send + Sync + 'static,
Provides context for this failure. Read more
fn compat(self) -> Compat<Self>
fn compat(self) -> Compat<Self>
Wraps this failure in a compatibility wrapper that implements std::error::Error
. Read more
ⓘImportant traits for Causes<'f>fn causes(&self) -> Causes
fn causes(&self) -> Causes
Returns a iterator over the causes of this Fail
with itself as the first item and the root_cause
as the final item. Read more
fn root_cause(&self) -> &(Fail + 'static)
fn root_cause(&self) -> &(Fail + 'static)
Returns the "root cause" of this Fail
- the last value in the cause chain which does not return an underlying cause
. Read more
impl Display for SchemaConstraintViolation
[src]
impl Display for SchemaConstraintViolation
Auto Trait Implementations
impl Send for SchemaConstraintViolation
impl Send for SchemaConstraintViolation
impl Sync for SchemaConstraintViolation
impl Sync for SchemaConstraintViolation