<spanid="variant.ConflictingUpserts"class="variant small-section-header"><ahref="#variant.ConflictingUpserts"class="anchor field"></a><spanid='ConflictingUpserts.v'class='invisible'><code>ConflictingUpserts</code></span></span><divclass='docblock'><p>A transaction tried to assert datoms where one tempid upserts to two (or more) distinct
entids.</p>
</div><spanclass='docblock autohide sub-variant'id='variant.ConflictingUpserts.fields'><h3class='fields'>Fields of <code>ConflictingUpserts</code></h3>
<table><tr><tdid='variant.ConflictingUpserts.field.conflicting_upserts'><spanid='ConflictingUpserts.v.conflicting_upserts.v'class='invisible'><code>conflicting_upserts: <aclass="struct"href="https://doc.rust-lang.org/nightly/alloc/btree/map/struct.BTreeMap.html"title="struct alloc::btree::map::BTreeMap">BTreeMap</a><<aclass="enum"href="../../edn/entities/enum.TempId.html"title="enum edn::entities::TempId">TempId</a>, <aclass="struct"href="https://doc.rust-lang.org/nightly/alloc/btree/set/struct.BTreeSet.html"title="struct alloc::btree::set::BTreeSet">BTreeSet</a><<aclass="struct"href="../../mentat_core/types/struct.KnownEntid.html"title="struct mentat_core::types::KnownEntid">KnownEntid</a>>></code></span></td><td><divclass='docblock'><p>A map from tempid to the entids it would upsert to.</p>
<p>In the future, we might even be able to attribute the upserts to particular (reduced)
datoms, i.e., to particular <code>[e a v]</code> triples that caused the constraint violation.
Attributing constraint violations to input data is more difficult to the multiple
rewriting passes the input undergoes.</p>
</div></td></tr></table></span><spanid="variant.TypeDisagreements"class="variant small-section-header"><ahref="#variant.TypeDisagreements"class="anchor field"></a><spanid='TypeDisagreements.v'class='invisible'><code>TypeDisagreements</code></span></span><divclass='docblock'><p>A transaction tried to assert a datom or datoms with the wrong value <code>v</code> type(s).</p>
</div><spanclass='docblock autohide sub-variant'id='variant.TypeDisagreements.fields'><h3class='fields'>Fields of <code>TypeDisagreements</code></h3>
<table><tr><tdid='variant.TypeDisagreements.field.conflicting_datoms'><spanid='TypeDisagreements.v.conflicting_datoms.v'class='invisible'><code>conflicting_datoms: <aclass="struct"href="https://doc.rust-lang.org/nightly/alloc/btree/map/struct.BTreeMap.html"title="struct alloc::btree::map::BTreeMap">BTreeMap</a><<aclass="primitive"href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">(</a><aclass="type"href="../../mentat_db/types/type.Entid.html"title="type mentat_db::types::Entid">Entid</a>, <aclass="type"href="../../mentat_db/types/type.Entid.html"title="type mentat_db::types::Entid">Entid</a>, <aclass="enum"href="../../mentat_db/types/enum.TypedValue.html"title="enum mentat_db::types::TypedValue">TypedValue</a><aclass="primitive"href="https://doc.rust-lang.org/nightly/std/primitive.tuple.html">)</a>, <aclass="enum"href="../../mentat_db/types/enum.ValueType.html"title="enum mentat_db::types::ValueType">ValueType</a>></code></span></td><td><divclass='docblock'><p>The key (<code>[e a v]</code>) has an invalid value <code>v</code>: it is not of the expected value type.</p>
</div></td></tr></table></span><spanid="variant.CardinalityConflicts"class="variant small-section-header"><ahref="#variant.CardinalityConflicts"class="anchor field"></a><spanid='CardinalityConflicts.v'class='invisible'><code>CardinalityConflicts</code></span></span><divclass='docblock'><p>A transaction tried to assert datoms that don't observe the schema's cardinality constraints.</p>
</div><spanclass='docblock autohide sub-variant'id='variant.CardinalityConflicts.fields'><h3class='fields'>Fields of <code>CardinalityConflicts</code></h3>
<h3id='impl-Clone'class='impl'><spanclass='in-band'><tableclass='table-display'><tbody><tr><td><code>impl <aclass="trait"href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html"title="trait core::clone::Clone">Clone</a> for <aclass="enum"href="../../mentat_db/errors/enum.SchemaConstraintViolation.html"title="enum mentat_db::errors::SchemaConstraintViolation">SchemaConstraintViolation</a></code><ahref='#impl-Clone'class='anchor'></a></span></td><td><spanclass='out-of-band'><divclass='ghost'></div><aclass='srclink'href='../../src/mentat_db/errors.rs.html#66'title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><divclass='impl-items'><h4id='method.clone'class="method"><spanid='clone.v'class='invisible'><tableclass='table-display'><tbody><tr><td><code>fn <ahref='https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone'class='fnname'>clone</a>(&self) -><aclass="enum"href="../../mentat_db/errors/enum.SchemaConstraintViolation.html"title="enum mentat_db::errors::SchemaConstraintViolation">SchemaConstraintViolation</a></code></span></td><td><spanclass='out-of-band'><divclass='ghost'></div><aclass='srclink'href='../../src/mentat_db/errors.rs.html#66'title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><divclass='docblock'><p>Returns a copy of the value. <ahref="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
</div></div><h3id='impl-Debug'class='impl'><spanclass='in-band'><tableclass='table-display'><tbody><tr><td><code>impl <aclass="trait"href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html"title="trait core::fmt::Debug">Debug</a> for <aclass="enum"href="../../mentat_db/errors/enum.SchemaConstraintViolation.html"title="enum mentat_db::errors::SchemaConstraintViolation">SchemaConstraintViolation</a></code><ahref='#impl-Debug'class='anchor'></a></span></td><td><spanclass='out-of-band'><divclass='ghost'></div><aclass='srclink'href='../../src/mentat_db/errors.rs.html#66'title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><divclass='impl-items'><h4id='method.fmt'class="method"><spanid='fmt.v'class='invisible'><tableclass='table-display'><tbody><tr><td><code>fn <ahref='https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt'class='fnname'>fmt</a>(&self, __arg_0: &mut <aclass="struct"href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html"title="struct core::fmt::Formatter">Formatter</a>) -><aclass="type"href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html"title="type core::fmt::Result">Result</a></code></span></td><td><spanclass='out-of-band'><divclass='ghost'></div><aclass='srclink'href='../../src/mentat_db/errors.rs.html#66'title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><divclass='docblock'><p>Formats the value using the given formatter. <ahref="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
</div></div><h3id='impl-Eq'class='impl'><spanclass='in-band'><tableclass='table-display'><tbody><tr><td><code>impl <aclass="trait"href="https://doc.rust-lang.org/nightly/core/cmp/trait.Eq.html"title="trait core::cmp::Eq">Eq</a> for <aclass="enum"href="../../mentat_db/errors/enum.SchemaConstraintViolation.html"title="enum mentat_db::errors::SchemaConstraintViolation">SchemaConstraintViolation</a></code><ahref='#impl-Eq'class='anchor'></a></span></td><td><spanclass='out-of-band'><divclass='ghost'></div><aclass='srclink'href='../../src/mentat_db/errors.rs.html#66'title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><divclass='impl-items'></div><h3id='impl-PartialEq'class='impl'><spanclass='in-band'><tableclass='table-display'><tbody><tr><td><code>impl <aclass="trait"href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html"title="trait core::cmp::PartialEq">PartialEq</a> for <aclass="enum"href="../../mentat_db/errors/enum.SchemaConstraintViolation.html"title="enum mentat_db::errors::SchemaConstraintViolation">SchemaConstraintViolation</a></code><ahref='#impl-PartialEq'class='anchor'></a></span></td><td><spanclass='out-of-band'><divclass='ghost'></div><aclass='srclink'href='../../src/mentat_db/errors.rs.html#66'title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><divclass='impl-items'><h4id='method.eq'class="method"><spanid='eq.v'class='invisible'><tableclass='table-display'><tbody><tr><td><code>fn <ahref='https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#tymethod.eq'class='fnname'>eq</a>(&self, __arg_0: &<aclass="enum"href="../../mentat_db/errors/enum.SchemaConstraintViolation.html"title="enum mentat_db::errors::SchemaConstraintViolation">SchemaConstraintViolation</a>) -><aclass="primitive"href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></td><td><spanclass='out-of-band'><divclass='ghost'></div><aclass='srclink'href='../../src/mentat_db/errors.rs.html#66'title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><divclass='docblock'><p>This method tests for <code>self</code> and <code>other</code> values to be equal, and is used by <code>==</code>. <ahref="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#tymethod.eq">Read more</a></p>
</div></div><h3id='impl-Fail'class='impl'><spanclass='in-band'><tableclass='table-display'><tbody><tr><td><code>impl Fail for <aclass="enum"href="../../mentat_db/errors/enum.SchemaConstraintViolation.html"title="enum mentat_db::errors::SchemaConstraintViolation">SchemaConstraintViolation</a></code><ahref='#impl-Fail'class='anchor'></a></span></td><td><spanclass='out-of-band'><divclass='ghost'></div><aclass='srclink'href='../../src/mentat_db/errors.rs.html#66'title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><divclass='impl-items'><h4id='method.cause'class="method"><spanid='cause.v'class='invisible'><tableclass='table-display'><tbody><tr><td><code>fn <ahref='#method.cause'class='fnname'>cause</a>(&self) -><aclass="enum"href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html"title="enum core::option::Option">Option</a><&Fail></code></span></td><td><spanclass='out-of-band'><divclass='ghost'></div><aclass='srclink'href='../../src/mentat_db/errors.rs.html#66'title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><divclass='docblock'><p>Returns a reference to the underlying cause of this failure, if it is an error that wraps other errors. <ahref="#method.cause">Read more</a></p>
</div><h4id='method.backtrace'class="method"><spanid='backtrace.v'class='invisible'><tableclass='table-display'><tbody><tr><td><code>fn <ahref='#method.backtrace'class='fnname'>backtrace</a>(&self) -><aclass="enum"href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html"title="enum core::option::Option">Option</a><&Backtrace></code></span></td><td><spanclass='out-of-band'><divclass='ghost'></div><aclass='srclink'href='../../src/mentat_db/errors.rs.html#66'title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><divclass='docblock'><p>Returns a reference to the <code>Backtrace</code> carried by this failure, if it carries one. <ahref="#method.backtrace">Read more</a></p>
</div><h4id='method.compat'class="method"><spanid='compat.v'class='invisible'><tableclass='table-display'><tbody><tr><td><code>fn <ahref='#method.compat'class='fnname'>compat</a>(self) -> Compat<Self></code></td><td></td></tr></tbody></table></span></h4><divclass='docblock'><p>Wraps this failure in a compatibility wrapper that implements <code>std::error::Error</code>. <ahref="#method.compat">Read more</a></p>
</div><h4id='method.causes'class="method"><divclass="important-traits"><divclass='tooltip'>ⓘ<spanclass='tooltiptext'>Important traits for Causes<'f></span></div><divclass="content hidden"><h3class="important">Important traits for Causes<'f></h3><codeclass="content"><spanclass="where fmt-newline">impl<'f><aclass="trait"href="https://doc.rust-lang.org/nightly/core/iter/iterator/trait.Iterator.html"title="trait core::iter::iterator::Iterator">Iterator</a> for Causes<'f></span><spanclass="where fmt-newline"> type <ahref='https://doc.rust-lang.org/nightly/core/iter/iterator/trait.Iterator.html#associatedtype.Item'class="type">Item</a> = &'f (Fail + 'static);</span></code></div></div><spanid='causes.v'class='invisible'><tableclass='table-display'><tbody><tr><td><code>fn <ahref='#method.causes'class='fnname'>causes</a>(&self) -> Causes</code></td><td></td></tr></tbody></table></span></h4><divclass='docblock'><p>Returns a iterator over the causes of this <code>Fail</code> with itself as the first item and the <code>root_cause</code> as the final item. <ahref="#method.causes">Read more</a></p>
</div><h4id='method.root_cause'class="method"><spanid='root_cause.v'class='invisible'><tableclass='table-display'><tbody><tr><td><code>fn <ahref='#method.root_cause'class='fnname'>root_cause</a>(&self) ->&(Fail + 'static)</code></td><td></td></tr></tbody></table></span></h4><divclass='docblock'><p>Returns the "root cause" of this <code>Fail</code> - the last value in the cause chain which does not return an underlying <code>cause</code>. <ahref="#method.root_cause">Read more</a></p>
</div></div><h3id='impl-Display'class='impl'><spanclass='in-band'><tableclass='table-display'><tbody><tr><td><code>impl <aclass="trait"href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html"title="trait core::fmt::Display">Display</a> for <aclass="enum"href="../../mentat_db/errors/enum.SchemaConstraintViolation.html"title="enum mentat_db::errors::SchemaConstraintViolation">SchemaConstraintViolation</a></code><ahref='#impl-Display'class='anchor'></a></span></td><td><spanclass='out-of-band'><divclass='ghost'></div><aclass='srclink'href='../../src/mentat_db/errors.rs.html#92-119'title='goto source code'>[src]</a></span></td></tr></tbody></table></h3><divclass='impl-items'><h4id='method.fmt-1'class="method"><spanid='fmt.v-1'class='invisible'><tableclass='table-display'><tbody><tr><td><code>fn <ahref='https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html#tymethod.fmt'class='fnname'>fmt</a>(&self, f: &mut <aclass="struct"href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html"title="struct core::fmt::Formatter">Formatter</a>) -><aclass="type"href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html"title="type core::fmt::Result">Result</a></code></span></td><td><spanclass='out-of-band'><divclass='ghost'></div><aclass='srclink'href='../../src/mentat_db/errors.rs.html#93-118'title='goto source code'>[src]</a></td></tr></tbody></table></span></h4><divclass='docblock'><p>Formats the value using the given formatter. <ahref="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html#tymethod.fmt">Read more</a></p>