Enum db_traits::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]
fn clone(&self) -> SchemaConstraintViolation
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Debug for SchemaConstraintViolation
[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result
[src]
Formats the value using the given formatter. Read more
impl Eq for SchemaConstraintViolation
[src]
impl PartialEq for SchemaConstraintViolation
[src]
fn eq(&self, __arg_0: &SchemaConstraintViolation) -> bool
[src]
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]
This method tests for !=
.