<!DOCTYPE html><htmllang="en"><head><metacharset="utf-8"><metaname="viewport"content="width=device-width, initial-scale=1.0"><metaname="generator"content="rustdoc"><metaname="description"content="Entry is the core data storage type of the server. Almost every aspect of the server is designed to read, handle and manipulate entries."><metaname="keywords"content="rust, rustlang, rust-lang, Entry"><title>Entry in kanidmd_lib::entry - Rust</title><linkrel="preload"as="font"type="font/woff2"crossoriginhref="../../SourceSerif4-Regular.ttf.woff2"><linkrel="preload"as="font"type="font/woff2"crossoriginhref="../../FiraSans-Regular.woff2"><linkrel="preload"as="font"type="font/woff2"crossoriginhref="../../FiraSans-Medium.woff2"><linkrel="preload"as="font"type="font/woff2"crossoriginhref="../../SourceCodePro-Regular.ttf.woff2"><linkrel="preload"as="font"type="font/woff2"crossoriginhref="../../SourceSerif4-Bold.ttf.woff2"><linkrel="preload"as="font"type="font/woff2"crossoriginhref="../../SourceCodePro-Semibold.ttf.woff2"><linkrel="stylesheet"type="text/css"href="../../normalize.css"><linkrel="stylesheet"type="text/css"href="../../rustdoc.css"id="mainThemeStyle"><linkrel="stylesheet"type="text/css"href="../../ayu.css"disabled><linkrel="stylesheet"type="text/css"href="../../dark.css"disabled><linkrel="stylesheet"type="text/css"href="../../light.css"id="themeStyle"><scriptid="default-settings"></script><scriptsrc="../../storage.js"></script><scriptdefersrc="sidebar-items.js"></script><scriptdefersrc="../../main.js"></script><noscript><linkrel="stylesheet"href="../../noscript.css"></noscript><linkrel="alternate icon"type="image/png"href="../../favicon-16x16.png"><linkrel="alternate icon"type="image/png"href="../../favicon-32x32.png"><linkrel="icon"type="image/svg+xml"href="../../favicon.svg"></head><bodyclass="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><navclass="mobile-topbar"><buttonclass="sidebar-menu-toggle">☰</button><aclass="sidebar-logo"href="../../kanidmd_lib/index.html"><divclass="logo-container"><imgclass="rust-logo"src="../../rust-logo.svg"alt="logo"></div></a><h2class="location"></h2></nav><navclass="sidebar"><aclass="sidebar-logo"href="../../kanidmd_lib/index.html"><divclass="logo-container"><imgclass="rust-logo"src="../../rust-logo.svg"alt="logo"></div></a><h2class="location"><ahref="#">Entry</a></h2><divclass="sidebar-elems"><section><divclass="block"><h3class="sidebar-title"><ahref="#implementations">Methods</a></h3><ul><li><ahref="#method.add_ava">add_ava</a></li><li><ahref="#method.add_ava-1">add_ava</a></li><li><ahref="#method.apply_modlist">apply_modlist</a></li><li><ahref="#method.assign_cid">assign_cid</a></li><li><ahref="#method.attribute_equality">attribute_equality</a></li><li><ahref="#method.attribute_lessthan">attribute_lessthan</a></li><li><ahref="#method.attribute_pres">attribute_pres</a></li><li><ahref="#method.attribute_substring">attribute_substring</a></li><li><ahref="#method.compare">compare</a></li><li><ahref="#method.compare-1">compare</a></li><li><ahref="#method.compare-2">compare</a></li><li><ahref="#method.entry_match_no_index">entry_match_no_index</a></li><li><ahref="#method.filter_from_attrs">filter_from_attrs</a></li><li><ahref="#method.from_dbentry">from_dbentry</a></li><li><ahref="#method.from_proto_entry">from_proto_entry</a></li><li><ahref="#method.from_proto_entry_str">from_proto_entry_str</a></li><li><ahref="#method.gen_modlist_assert">gen_modlist_assert</a></li><li><ahref="#method.get_ava_as_intenttokens">get_ava_as_intenttokens</a></li><li><ahref="#method.get_ava_as_iutf8_iter">get_ava_as_iutf8_iter</a></li><li><ahref="#method.get_ava_as_oauthscopemaps">get_ava_as_oauthscopemaps</a></li><li><ahref="#method.get_ava_as_oauthscopes">get_ava_as_oauthscopes</a></li><li><ahref="#method.get_ava_as_refuuid">get_ava_as_refuuid</a></li><li><ahref="#method.get_ava_as_se
designed to read, handle and manipulate entries.</p>
<p>Entries store attribute value assertions, or AVA. These are sets of key-values.</p>
<p>Entries have a lifecycle within a single operation, and as part of replication.
The lifecycle for operations is defined through state and valid types. Each entry has a pair
Of these types at anytime. The first is the AVA <ahref="../schema/index.html"><code>schema</code></a> and <ahref="../access/index.html"><code>access</code></a> control assertion
state. This is represented by the type <code>VALID</code> as one of <code>EntryValid</code>, <code>EntryInvalid</code> or
<code>EntryReduced</code>. Every entry starts as <code>EntryInvalid</code>, and when checked by the schema for
correctness, transitions to <code>EntryValid</code>. While an entry is <code>EntryValid</code> it can not be
altered - you must invalidate it to <code>EntryInvalid</code>, then modify, then check again.
An entry that has had access controls applied moves from <code>EntryValid</code> to <code>EntryReduced</code>,
to show that the AVAs have reduced to the valid read set of the current <ahref="../event/index.html"><code>event</code></a> user.</p>
<p>The second type of <code>STATE</code> represents the database commit state and internal db ID’s. A
new entry that has never been committed is <code>EntryNew</code>, but an entry that has been retrieved
from the database is <code>EntryCommitted</code>. This affects the operations you can apply IE modify
or delete.</p>
<p>These types exist to prevent at compile time, mishandling of Entries, to ensure they are always
handled with the correct lifecycles and processes.</p>
</div></details><h2id="implementations"class="small-section-header">Implementations<ahref="#implementations"class="anchor"></a></h2><divid="implementations-list"><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Entry%3CEntryInit%2C%20EntryNew%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#260-604">source</a></span><ahref="#impl-Entry%3CEntryInit%2C%20EntryNew%3E"class="anchor"></a><h3class="code-header in-band">impl <aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntryInit.html"title="struct kanidmd_lib::entry::EntryInit">EntryInit</a>, <aclass="struct"href="struct.EntryNew.html"title="struct kanidmd_lib::entry::EntryNew">EntryNew</a>></h3></section></summary><divclass="impl-items"><sectionid="method.new"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#261-269">source</a></span><h4class="code-header">pub fn <ahref="#method.new"class="fnname">new</a>() -> Self</h4></section><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.from_proto_entry"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#273-310">source</a></span><h4class="code-header">pub fn <ahref="#method.from_proto_entry"class="fnname">from_proto_entry</a>(<br> e: &<aclass="struct"href="../../kanidm_proto/v1/struct.Entry.html"title="struct kanidm_proto::v1::Entry">ProtoEntry</a>,<br> qs: &<aclass="struct"href="../server/struct.QueryServerWriteTransaction.html"title="struct kanidmd_lib::server::QueryServerWriteTransaction">QueryServerWriteTransaction</a><'_><br>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/result/enum.Result.html"title="enum core::result::Result">Result</a><Self, <aclass="enum"href="../prelude/enum.OperationError.html"title="enum kanidmd_lib::prelude::OperationError">OperationError</a>></h4></section></summary><divclass="docblock"><p>Consume a Protocol Entry from JSON, and validate and process the data into an internal
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.from_proto_entry_str"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#314">source</a></span><h4class="code-header">pub fn <ahref="#method.from_proto_entry_str"class="fnname">from_proto_entry_str</a>(<br> es: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>,<br> qs: &<aclass="struct"href="../server/struct.QueryServerWriteTransaction.html"title="struct kanidmd_lib::server::QueryServerWriteTransaction">QueryServerWriteTransaction</a><'_><br>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/result/enum.Result.html"title="enum core::result::Result">Result</a><Self, <aclass="enum"href="../prelude/enum.OperationError.html"title="enum kanidmd_lib::prelude::OperationError">OperationError</a>></h4></section></summary><divclass="docblock"><p>Given a proto entry in JSON formed as a serialised string, processed that string
into an Entry.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.assign_cid"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#494-514">source</a></span><h4class="code-header">pub fn <ahref="#method.assign_cid"class="fnname">assign_cid</a>(<br> self,<br> cid: Cid,<br> schema: &dyn <aclass="trait"href="../schema/trait.SchemaTransaction.html"title="trait kanidmd_lib::schema::SchemaTransaction">SchemaTransaction</a><br>) -><aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntryInvalid.html"title="struct kanidmd_lib::entry::EntryInvalid">EntryInvalid</a>, <aclass="struct"href="struct.EntryNew.html"title="struct kanidmd_lib::entry::EntryNew">EntryNew</a>></h4></section></summary><divclass="docblock"><p>Assign the Change Identifier to this Entry, allowing it to be modified and then
written to the <code>Backend</code></p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.compare"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#517-519">source</a></span><h4class="code-header">pub fn <ahref="#method.compare"class="fnname">compare</a>(&self, rhs: &<aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntrySealed.html"title="struct kanidmd_lib::entry::EntrySealed">EntrySealed</a>, <aclass="struct"href="struct.EntryCommitted.html"title="struct kanidmd_lib::entry::EntryCommitted">EntryCommitted</a>>) -><aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.bool.html">bool</a></h4></section></summary><divclass="docblock"><p>Compare this entry to another.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.add_ava"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#589-591">source</a></span><h4class="code-header">pub fn <ahref="#method.add_ava"class="fnname">add_ava</a>(&mut self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>, value: <aclass="enum"href="../value/enum.Value.html"title="enum kanidmd_lib::value::Value">Value</a>)</h4></section></summary><divclass="docblock"><p>Add an attribute-value-assertion to this Entry.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.set_ava"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#594-599">source</a></span><h4class="code-header">pub fn <ahref="#method.set_ava"class="fnname">set_ava</a><T>(&mut self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>, iter: T) <spanclass="where fmt-newline">where<br> T: <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/iter/traits/collect/trait.IntoIterator.html"title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item = <aclass="enum"href="../value/enum.Value.html"title="enum kanidmd_lib::value::Value">Value</a>>, </span></h4></section></summary><divclass="docblock"><p>Replace the existing content of an attribute set of this Entry, with a new set of Values.</p>
</div></details><sectionid="method.get_ava_mut"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#601-603">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_mut"class="fnname">get_ava_mut</a>(&mut self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><&mut <aclass="type"href="../valueset/type.ValueSet.html"title="type kanidmd_lib::valueset::ValueSet">ValueSet</a>></h4></section></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Entry%3CEntryInvalid%2C%20STATE%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#606-864">source</a></span><ahref="#impl-Entry%3CEntryInvalid%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<STATE><aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntryInvalid.html"title="struct kanidmd_lib::entry::EntryInvalid">EntryInvalid</a>, STATE></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.validate"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#614-863">source</a></span><h4class="code-header">pub fn <ahref="#method.validate"class="fnname">validate</a>(<br> self,<br> schema: &dyn <aclass="trait"href="../schema/trait.SchemaTransaction.html"title="trait kanidmd_lib::schema::SchemaTransaction">SchemaTransaction</a><br>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/result/enum.Result.html"title="enum core::result::Result">Result</a><<aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntryValid.html"title="struct kanidmd_lib::entry::EntryValid">EntryValid</a>, STATE>, <aclass="enum"href="../../kanidm_proto/v1/enum.SchemaError.html"title="enum kanidm_proto::v1::SchemaError">SchemaError</a>></h4></section></summary><divclass="docblock"><p>Validate that this entry and its attribute-value sets are conformant to the system’s’
schema and the relevant syntaxes.</p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Entry%3CEntryInvalid%2C%20EntryCommitted%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#885-929">source</a></span><ahref="#impl-Entry%3CEntryInvalid%2C%20EntryCommitted%3E"class="anchor"></a><h3class="code-header in-band">impl <aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntryInvalid.html"title="struct kanidmd_lib::entry::EntryInvalid">EntryInvalid</a>, <aclass="struct"href="struct.EntryCommitted.html"title="struct kanidmd_lib::entry::EntryCommitted">EntryCommitted</a>></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.to_recycled"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#901-913">source</a></span><h4class="code-header">pub fn <ahref="#method.to_recycled"class="fnname">to_recycled</a>(self) -> Self</h4></section></summary><divclass="docblock"><p>Convert this entry into a recycled entry, that is “in the recycle bin”.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.to_revived"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#916-928">source</a></span><h4class="code-header">pub fn <ahref="#method.to_revived"class="fnname">to_revived</a>(self) -> Self</h4></section></summary><divclass="docblock"><p>Convert this entry into a recycled entry, that is “in the recycle bin”.</p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Entry%3CEntrySealed%2C%20EntryNew%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1017-1040">source</a></span><ahref="#impl-Entry%3CEntrySealed%2C%20EntryNew%3E"class="anchor"></a><h3class="code-header in-band">impl <aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntrySealed.html"title="struct kanidmd_lib::entry::EntrySealed">EntrySealed</a>, <aclass="struct"href="struct.EntryNew.html"title="struct kanidmd_lib::entry::EntryNew">EntryNew</a>></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.into_sealed_committed_id"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1029-1035">source</a></span><h4class="code-header">pub fn <ahref="#method.into_sealed_committed_id"class="fnname">into_sealed_committed_id</a>(<br> self,<br> id: <aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.u64.html">u64</a><br>) -><aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntrySealed.html"title="struct kanidmd_lib::entry::EntrySealed">EntrySealed</a>, <aclass="struct"href="struct.EntryCommitted.html"title="struct kanidmd_lib::entry::EntryCommitted">EntryCommitted</a>></h4></section></summary><divclass="docblock"><p>Given this validated and sealed entry, process it with a <code>Backend</code> ID number so that it
can be then serialised to the database.</p>
</div></details><sectionid="method.compare-1"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1037-1039">source</a></span><h4class="code-header">pub fn <ahref="#method.compare-1"class="fnname">compare</a>(&self, rhs: &<aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntrySealed.html"title="struct kanidmd_lib::entry::EntrySealed">EntrySealed</a>, <aclass="struct"href="struct.EntryNew.html"title="struct kanidmd_lib::entry::EntryNew">EntryNew</a>>) -><aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.bool.html">bool</a></h4></section></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Entry%3CVALID%2C%20EntryCommitted%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1045-1050">source</a></span><ahref="#impl-Entry%3CVALID%2C%20EntryCommitted%3E"class="anchor"></a><h3class="code-header in-band">impl<VALID><aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><VALID, <aclass="struct"href="struct.EntryCommitted.html"title="struct kanidmd_lib::entry::EntryCommitted">EntryCommitted</a>></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_id"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1047-1049">source</a></span><h4class="code-header">pub fn <ahref="#method.get_id"class="fnname">get_id</a>(&self) -><aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.u64.html">u64</a></h4></section></summary><divclass="docblock"><p>If this entry has ever been commited to disk, retrieve it’s database id number.</p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Entry%3CEntrySealed%2C%20STATE%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1052-1060">source</a></span><ahref="#impl-Entry%3CEntrySealed%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<STATE><aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntrySealed.html"title="struct kanidmd_lib::entry::EntrySealed">EntrySealed</a>, STATE></h3></section></summary><divclass="impl-items"><sectionid="method.into_init"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1053-1059">source</a></span><h4class="code-header">pub fn <ahref="#method.into_init"class="fnname">into_init</a>(self) -><aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntryInit.html"title="struct kanidmd_lib::entry::EntryInit">EntryInit</a>, STATE></h4></section></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Entry%3CEntrySealed%2C%20EntryCommitted%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1062-1604">source</a></span><ahref="#impl-Entry%3CEntrySealed%2C%20EntryCommitted%3E"class="anchor"></a><h3class="code-header in-band">impl <aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntrySealed.html"title="struct kanidmd_lib::entry::EntrySealed">EntrySealed</a>, <aclass="struct"href="struct.EntryCommitted.html"title="struct kanidmd_lib::entry::EntryCommitted">EntryCommitted</a>></h3></section></summary><divclass="impl-items"><sectionid="method.get_changelog_mut"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1069-1071">source</a></span><h4class="code-header">pub fn <ahref="#method.get_changelog_mut"class="fnname">get_changelog_mut</a>(&mut self) ->&mut EntryChangelog</h4></section><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.insert_claim"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1075-1077">source</a></span><h4class="code-header">pub fn <ahref="#method.insert_claim"class="fnname">insert_claim</a>(&mut self, value: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>)</h4></section></summary><divclass="docblock"><p>Insert a claim to this entry. This claim can NOT be persisted to disk, this is only
used during a single Event session.</p>
</div></details><sectionid="method.compare-2"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1079-1081">source</a></span><h4class="code-header">pub fn <ahref="#method.compare-2"class="fnname">compare</a>(&self, rhs: &<aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntrySealed.html"title="struct kanidmd_lib::entry::EntrySealed">EntrySealed</a>, <aclass="struct"href="struct.EntryCommitted.html"title="struct kanidmd_lib::entry::EntryCommitted">EntryCommitted</a>>) -><aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.bool.html">bool</a></h4></section><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.to_dbentry"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1084-1105">source</a></span><h4class="code-header">pub fn <ahref="#method.to_dbentry"class="fnname">to_dbentry</a>(&self) -><aclass="struct"href="../be/dbentry/struct.DbEntry.html"title="struct kanidmd_lib::be::dbentry::DbEntry">DbEntry</a></h4></section></summary><divclass="docblock"><p>Serialise this entry to it’s Database format ready for storage.</p>
<p>This function bypasses the access control validation logic and should NOT
be used without special care and attention to ensure that no private data
is leaked incorrectly to clients. Generally this is ONLY used inside of
the access control processing functions which correctly applies the reduction
steps.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.reduce_attributes"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1530-1557">source</a></span><h4class="code-header">pub fn <ahref="#method.reduce_attributes"class="fnname">reduce_attributes</a>(<br> &self,<br> allowed_attrs: &<aclass="struct"href="../idm/authsession/struct.Set.html"title="struct kanidmd_lib::idm::authsession::Set">BTreeSet</a><&<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>><br>) -><aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntryReduced.html"title="struct kanidmd_lib::entry::EntryReduced">EntryReduced</a>, <aclass="struct"href="struct.EntryCommitted.html"title="struct kanidmd_lib::entry::EntryCommitted">EntryCommitted</a>></h4></section></summary><divclass="docblock"><p>Given a set of attributes that are allowed to be seen on this entry, process and remove
all other values that are NOT allowed in this query.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.to_tombstone"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1560-1580">source</a></span><h4class="code-header">pub fn <ahref="#method.to_tombstone"class="fnname">to_tombstone</a>(&self, cid: Cid) -><aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntryInvalid.html"title="struct kanidmd_lib::entry::EntryInvalid">EntryInvalid</a>, <aclass="struct"href="struct.EntryCommitted.html"title="struct kanidmd_lib::entry::EntryCommitted">EntryCommitted</a>></h4></section></summary><divclass="docblock"><p>Convert this recycled entry, into a tombstone ready for reaping.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.into_valid"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1583-1593">source</a></span><h4class="code-header">pub fn <ahref="#method.into_valid"class="fnname">into_valid</a>(<br> self,<br> cid: Cid,<br> eclog: EntryChangelog<br>) -><aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntryValid.html"title="struct kanidmd_lib::entry::EntryValid">EntryValid</a>, <aclass="struct"href="struct.EntryCommitted.html"title="struct kanidmd_lib::entry::EntryCommitted">EntryCommitted</a>></h4></section></summary><divclass="docblock"><p>Given a current transaction change identifier, mark this entry as valid and committed.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.to_ldap"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1692-1760">source</a></span><h4class="code-header">pub fn <ahref="#method.to_ldap"class="fnname">to_ldap</a>(<br> &self,<br> qs: &<aclass="struct"href="../server/struct.QueryServerReadTransaction.html"title="struct kanidmd_lib::server::QueryServerReadTransaction">QueryServerReadTransaction</a><'_>,<br> basedn: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>,<br> all_attrs: <aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.bool.html">bool</a>,<br> l_attrs: &[<aclass="struct"href="https://doc.rust-lang.org/1.64.0/alloc/string/struct.String.html"title="struct alloc::string::String">String</a>]<br>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/result/enum.Result.html"title="enum core::result::Result">Result</a><LdapSearchResultEntry, <aclass="enum"href="../prelude/enum.OperationError.html"title="enum kanidmd_lib::prelude::OperationError">OperationError</a>></h4></section></summary><divclass="docblock"><p>Transform this reduced entry into an LDAP form that can be sent to clients.</p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1764-2263">source</a></span><ahref="#impl-Entry%3CVALID%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<VALID, STATE><aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><VALID, STATE></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_ava_names"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1811-1814">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_names"class="fnname">get_ava_names</a>(&self) -> impl <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/iter/traits/iterator/trait.Iterator.html"title="trait core::iter::traits::iterator::Iterator">Iterator</a><Item = &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>></h4></section></summary><divclass="docblock"><p>Get an iterator over the current set of attribute names that this entry contains.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_ava_set"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1826-1828">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_set"class="fnname">get_ava_set</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><&<aclass="type"href="../valueset/type.ValueSet.html"title="type kanidmd_lib::valueset::ValueSet">ValueSet</a>></h4></section></summary><divclass="docblock"><p>Return a reference to the current set of values that are associated to this attribute.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_ava_iter_iutf8"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1872-1874">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_iter_iutf8"class="fnname">get_ava_iter_iutf8</a>(<br> &self,<br> attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a><br>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><impl <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/iter/traits/iterator/trait.Iterator.html"title="trait core::iter::traits::iterator::Iterator">Iterator</a><Item = &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>>></h4></section></summary><divclass="docblock"><p>If possible, return an iterator over the set of values transformed into a <code>&str</code>.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_ava_as_refuuid"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1878-1881">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_as_refuuid"class="fnname">get_ava_as_refuuid</a>(<br> &self,<br> attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a><br>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="struct"href="https://doc.rust-lang.org/1.64.0/alloc/boxed/struct.Box.html"title="struct alloc::boxed::Box">Box</a><dyn <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/iter/traits/iterator/trait.Iterator.html"title="trait core::iter::traits::iterator::Iterator">Iterator</a><Item = <aclass="struct"href="../prelude/struct.Uuid.html"title="struct kanidmd_lib::prelude::Uuid">Uuid</a>> + '_>></h4></section></summary><divclass="docblock"><p>If possible, return an iterator over the set of values transformed into a <code>Uuid</code>.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_ava_iter_sshpubkeys"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1885-1888">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_iter_sshpubkeys"class="fnname">get_ava_iter_sshpubkeys</a>(<br> &self,<br> attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a><br>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><impl <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/iter/traits/iterator/trait.Iterator.html"title="trait core::iter::traits::iterator::Iterator">Iterator</a><Item = &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>>></h4></section></summary><divclass="docblock"><p>If possible, return an iterator over the set of ssh key values transformed into a <code>&str</code>.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_ava_single"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1912-1914">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_single"class="fnname">get_ava_single</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="enum"href="../value/enum.Value.html"title="enum kanidmd_lib::value::Value">Value</a>></h4></section></summary><divclass="docblock"><p>Return a single value of this attributes name, or <code>None</code> if it is NOT present, or
there are multiple values present (ambiguous).</p>
</div></details><sectionid="method.get_ava_single_proto_string"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1916-1920">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_single_proto_string"class="fnname">get_ava_single_proto_string</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="struct"href="https://doc.rust-lang.org/1.64.0/alloc/string/struct.String.html"title="struct alloc::string::String">String</a>></h4></section><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_ava_single_bool"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1924-1926">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_single_bool"class="fnname">get_ava_single_bool</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.bool.html">bool</a>></h4></section></summary><divclass="docblock"><p>Return a single bool, if valid to transform this value into a boolean.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_ava_single_uint32"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1930-1932">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_single_uint32"class="fnname">get_ava_single_uint32</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.u32.html">u32</a>></h4></section></summary><divclass="docblock"><p>Return a single uint32, if valid to transform this value.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_ava_single_syntax"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1936-1940">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_single_syntax"class="fnname">get_ava_single_syntax</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="enum"href="../value/enum.SyntaxType.html"title="enum kanidmd_lib::value::SyntaxType">SyntaxType</a>></h4></section></summary><divclass="docblock"><p>Return a single syntax type, if valid to transform this value.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_ava_single_credential"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1944-1948">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_single_credential"class="fnname">get_ava_single_credential</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><&<aclass="struct"href="../credential/struct.Credential.html"title="struct kanidmd_lib::credential::Credential">Credential</a>></h4></section></summary><divclass="docblock"><p>Return a single credential, if valid to transform this value.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_ava_passkeys"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1952-1954">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_passkeys"class="fnname">get_ava_passkeys</a>(<br> &self,<br> attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a><br>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><&<aclass="struct"href="https://doc.rust-lang.org/1.64.0/alloc/collections/btree/map/struct.BTreeMap.html"title="struct alloc::collections::btree::map::BTreeMap">BTreeMap</a><<aclass="struct"href="../prelude/struct.Uuid.html"title="struct kanidmd_lib::prelude::Uuid">Uuid</a>, (<aclass="struct"href="https://doc.rust-lang.org/1.64.0/alloc/string/struct.String.html"title="struct alloc::string::String">String</a>, PasskeyV4)>></h4></section></summary><divclass="docblock"><p>Get the set of passkeys on this account, if any are present.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_ava_devicekeys"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1958-1960">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_devicekeys"class="fnname">get_ava_devicekeys</a>(<br> &self,<br> attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a><br>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><&<aclass="struct"href="https://doc.rust-lang.org/1.64.0/alloc/collections/btree/map/struct.BTreeMap.html"title="struct alloc::collections::btree::map::BTreeMap">BTreeMap</a><<aclass="struct"href="../prelude/struct.Uuid.html"title="struct kanidmd_lib::prelude::Uuid">Uuid</a>, (<aclass="struct"href="https://doc.rust-lang.org/1.64.0/alloc/string/struct.String.html"title="struct alloc::string::String">String</a>, DeviceKeyV4)>></h4></section></summary><divclass="docblock"><p>Get the set of devicekeys on this account, if any are present.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_ava_single_secret"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1964-1966">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_single_secret"class="fnname">get_ava_single_secret</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><&<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>></h4></section></summary><divclass="docblock"><p>Return a single secret value, if valid to transform this value.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_ava_single_datetime"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1970-1972">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_single_datetime"class="fnname">get_ava_single_datetime</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><OffsetDateTime></h4></section></summary><divclass="docblock"><p>Return a single datetime, if valid to transform this value.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.get_ava_single_url"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#1994-1996">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_single_url"class="fnname">get_ava_single_url</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><&<aclass="struct"href="../prelude/struct.Url.html"title="struct kanidmd_lib::prelude::Url">Url</a>></h4></section></summary><divclass="docblock"><p>Return a single <code>&Url</code>, if valid to transform this value.</p>
</div></details><sectionid="method.get_ava_single_private_binary"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2024-2028">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_single_private_binary"class="fnname">get_ava_single_private_binary</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><&[<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.u8.html">u8</a>]></h4></section><sectionid="method.get_ava_single_jws_key_es256"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2030-2034">source</a></span><h4class="code-header">pub fn <ahref="#method.get_ava_single_jws_key_es256"class="fnname">get_ava_single_jws_key_es256</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><&JwsSigner></h4></section><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.attribute_pres"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2045-2047">source</a></span><h4class="code-header">pub fn <ahref="#method.attribute_pres"class="fnname">attribute_pres</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.bool.html">bool</a></h4></section></summary><divclass="docblock"><p>Assert if an attribute of this name is present on this entry.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.attribute_equality"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2052-2061">source</a></span><h4class="code-header">pub fn <ahref="#method.attribute_equality"class="fnname">attribute_equality</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>, value: &<aclass="enum"href="../value/enum.PartialValue.html"title="enum kanidmd_lib::value::PartialValue">PartialValue</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.bool.html">bool</a></h4></section></summary><divclass="docblock"><p>Assert if an attribute of this name is present, and one of it’s values contains
the an exact match of this partial value.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.attribute_substring"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2066-2071">source</a></span><h4class="code-header">pub fn <ahref="#method.attribute_substring"class="fnname">attribute_substring</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>, subvalue: &<aclass="enum"href="../value/enum.PartialValue.html"title="enum kanidmd_lib::value::PartialValue">PartialValue</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.bool.html">bool</a></h4></section></summary><divclass="docblock"><p>Assert if an attribute of this name is present, and one of it’s values contains
the following substring, if possible to perform the substring comparison.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.attribute_lessthan"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2076-2081">source</a></span><h4class="code-header">pub fn <ahref="#method.attribute_lessthan"class="fnname">attribute_lessthan</a>(&self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>, subvalue: &<aclass="enum"href="../value/enum.PartialValue.html"title="enum kanidmd_lib::value::PartialValue">PartialValue</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.bool.html">bool</a></h4></section></summary><divclass="docblock"><p>Assert if an attribute of this name is present, and one of it’s values is less than
the following partial value</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.entry_match_no_index"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2089-2092">source</a></span><h4class="code-header">pub fn <ahref="#method.entry_match_no_index"class="fnname">entry_match_no_index</a>(&self, filter: &<aclass="struct"href="../filter/struct.Filter.html"title="struct kanidmd_lib::filter::Filter">Filter</a><<aclass="struct"href="../filter/struct.FilterValidResolved.html"title="struct kanidmd_lib::filter::FilterValidResolved">FilterValidResolved</a>>) -><aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.bool.html">bool</a></h4></section></summary><divclass="docblock"><p>Test if the following filter applies to and matches this entry.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.filter_from_attrs"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2128-2160">source</a></span><h4class="code-header">pub fn <ahref="#method.filter_from_attrs"class="fnname">filter_from_attrs</a>(<br> &self,<br> attrs: &[<aclass="type"href="../prelude/type.AttrString.html"title="type kanidmd_lib::prelude::AttrString">AttrString</a>]<br>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="struct"href="../filter/struct.Filter.html"title="struct kanidmd_lib::filter::Filter">Filter</a><<aclass="struct"href="../filter/struct.FilterInvalid.html"title="struct kanidmd_lib::filter::FilterInvalid">FilterInvalid</a>>></h4></section></summary><divclass="docblock"><p>Given this entry, generate a filter containing the requested attributes strings as
equality components.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.gen_modlist_assert"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2164-2212">source</a></span><h4class="code-header">pub fn <ahref="#method.gen_modlist_assert"class="fnname">gen_modlist_assert</a>(<br> &self,<br> schema: &dyn <aclass="trait"href="../schema/trait.SchemaTransaction.html"title="trait kanidmd_lib::schema::SchemaTransaction">SchemaTransaction</a><br>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/result/enum.Result.html"title="enum core::result::Result">Result</a><<aclass="struct"href="../modify/struct.ModifyList.html"title="struct kanidmd_lib::modify::ModifyList">ModifyList</a><<aclass="struct"href="../modify/struct.ModifyInvalid.html"title="struct kanidmd_lib::modify::ModifyInvalid">ModifyInvalid</a>>, <aclass="enum"href="../../kanidm_proto/v1/enum.SchemaError.html"title="enum kanidm_proto::v1::SchemaError">SchemaError</a>></h4></section></summary><divclass="docblock"><p>Given this entry, generate a modification list that would “assert”
another entry is in the same/identical attribute state.</p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Entry%3CEntryInvalid%2C%20STATE%3E-1"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2265-2365">source</a></span><ahref="#impl-Entry%3CEntryInvalid%2C%20STATE%3E-1"class="anchor"></a><h3class="code-header in-band">impl<STATE><aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntryInvalid.html"title="struct kanidmd_lib::entry::EntryInvalid">EntryInvalid</a>, STATE><spanclass="where fmt-newline">where<br> STATE: <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html"title="trait core::clone::Clone">Clone</a>, </span></h3></section></summary><divclass="impl-items"><sectionid="method.add_ava-1"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2273-2278">source</a></span><h4class="code-header">pub fn <ahref="#method.add_ava-1"class="fnname">add_ava</a>(&mut self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>, value: <aclass="enum"href="../value/enum.Value.html"title="enum kanidmd_lib::value::Value">Value</a>)</h4></section><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.pop_ava"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2324-2327">source</a></span><h4class="code-header">pub fn <ahref="#method.pop_ava"class="fnname">pop_ava</a>(&mut self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="type"href="../valueset/type.ValueSet.html"title="type kanidmd_lib::valueset::ValueSet">ValueSet</a>></h4></section></summary><divclass="docblock"><p>Remove all values of this attribute from the entry, and return their content.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.set_ava-1"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2331-2340">source</a></span><h4class="code-header">pub fn <ahref="#method.set_ava-1"class="fnname">set_ava</a><T>(&mut self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>, iter: T) <spanclass="where fmt-newline">where<br> T: <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html"title="trait core::clone::Clone">Clone</a> + <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/iter/traits/collect/trait.IntoIterator.html"title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item = <aclass="enum"href="../value/enum.Value.html"title="enum kanidmd_lib::value::Value">Value</a>>, </span></h4></section></summary><divclass="docblock"><p>Replace the content of this attribute with a new value set. Effectively this is
a a “purge and set”.</p>
</div></details><sectionid="method.set_ava_set"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2342-2348">source</a></span><h4class="code-header">pub fn <ahref="#method.set_ava_set"class="fnname">set_ava_set</a>(&mut self, attr: &<aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.str.html">str</a>, vs: <aclass="type"href="../valueset/type.ValueSet.html"title="type kanidmd_lib::valueset::ValueSet">ValueSet</a>)</h4></section><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.apply_modlist"class="method has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2351-2364">source</a></span><h4class="code-header">pub fn <ahref="#method.apply_modlist"class="fnname">apply_modlist</a>(&mut self, modlist: &<aclass="struct"href="../modify/struct.ModifyList.html"title="struct kanidmd_lib::modify::ModifyList">ModifyList</a><<aclass="struct"href="../modify/struct.ModifyValid.html"title="struct kanidmd_lib::modify::ModifyValid">ModifyValid</a>>)</h4></section></summary><divclass="docblock"><p>Apply the content of this modlist to this entry, enforcing the expressed state.</p>
</div></details></div></details></div><h2id="trait-implementations"class="small-section-header">Trait Implementations<ahref="#trait-implementations"class="anchor"></a></h2><divid="trait-implementations-list"><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Clone-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#866-879">source</a></span><ahref="#impl-Clone-for-Entry%3CVALID%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<VALID, STATE><aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html"title="trait core::clone::Clone">Clone</a> for <aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><VALID, STATE><spanclass="where fmt-newline">where<br> VALID: <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html"title="trait core::clone::Clone">Clone</a>,<br> STATE: <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html"title="trait core::clone::Clone">Clone</a>, </span></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.clone"class="method trait-impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#872-878">source</a></span><ahref="#method.clone"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html#tymethod.clone"class="fnname">clone</a>(&self) -><aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><VALID, STATE></h4></section></summary><divclass='docblock'><p>Returns a copy of the value. <ahref="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.clone_from"class="method trait-impl has-srclink"><spanclass="rightside"><spanclass="since"title="Stable since Rust version 1.0.0">1.0.0</span> · <aclass="srclink"href="https://doc.rust-lang.org/1.64.0/src/core/clone.rs.html#132-134">source</a></span><ahref="#method.clone_from"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html#method.clone_from"class="fnname">clone_from</a>(&mut self, source: <aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.reference.html">&</a>Self)</h4></section></summary><divclass='docblock'><p>Performs copy-assignment from <code>source</code>. <ahref="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Debug-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#221-233">source</a></span><ahref="#impl-Debug-for-Entry%3CVALID%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<VALID, STATE><aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/fmt/trait.Debug.html"title="trait core::fmt::Debug">Debug</a> for <aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><VALID, STATE><spanclass="where fmt-newline">where<br> STATE: <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/fmt/trait.Debug.html"title="trait core::fmt::Debug">Debug</a>,<br> VALID: <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/fmt/trait.Debug.html"title="trait core::fmt::Debug">Debug</a>, </span></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.fmt"class="method trait-impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#226-232">source</a></span><ahref="#method.fmt"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.64.0/core/fmt/trait.Debug.html#tymethod.fmt"class="fnname">fmt</a>(&self, f: &mut <aclass="struct"href="https://doc.rust-lang.org/1.64.0/core/fmt/struct.Formatter.html"title="struct core::fmt::Formatter">Formatter</a><'_>) -><aclass="type"href="https://doc.rust-lang.org/1.64.0/core/fmt/type.Result.html"title="type core::fmt::Result">Result</a></h4></section></summary><divclass='docblock'><p>Formats the value using the given formatter. <ahref="https://doc.rust-lang.org/1.64.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Default-for-Entry%3CEntryInit%2C%20EntryNew%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#254-258">source</a></span><ahref="#impl-Default-for-Entry%3CEntryInit%2C%20EntryNew%3E"class="anchor"></a><h3class="code-header in-band">impl <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/default/trait.Default.html"title="trait core::default::Default">Default</a> for <aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntryInit.html"title="struct kanidmd_lib::entry::EntryInit">EntryInit</a>, <aclass="struct"href="struct.EntryNew.html"title="struct kanidmd_lib::entry::EntryNew">EntryNew</a>></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.default"class="method trait-impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#255-257">source</a></span><ahref="#method.default"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.64.0/core/default/trait.Default.html#tymethod.default"class="fnname">default</a>() -> Self</h4></section></summary><divclass='docblock'><p>Returns the “default value” for a type. <ahref="https://doc.rust-lang.org/1.64.0/core/default/trait.Default.html#tymethod.default">Read more</a></p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Display-for-Entry%3CEntryInit%2C%20STATE%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#241-245">source</a></span><ahref="#impl-Display-for-Entry%3CEntryInit%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<STATE><aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/fmt/trait.Display.html"title="trait core::fmt::Display">Display</a> for <aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntryInit.html"title="struct kanidmd_lib::entry::EntryInit">EntryInit</a>, STATE></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.fmt-2"class="method trait-impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#242-244">source</a></span><ahref="#method.fmt-2"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.64.0/core/fmt/trait.Display.html#tymethod.fmt"class="fnname">fmt</a>(&self, f: &mut <aclass="struct"href="https://doc.rust-lang.org/1.64.0/core/fmt/struct.Formatter.html"title="struct core::fmt::Formatter">Formatter</a><'_>) -><aclass="type"href="https://doc.rust-lang.org/1.64.0/core/fmt/type.Result.html"title="type core::fmt::Result">Result</a></h4></section></summary><divclass='docblock'><p>Formats the value using the given formatter. <ahref="https://doc.rust-lang.org/1.64.0/core/fmt/trait.Display.html#tymethod.fmt">Read more</a></p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Display-for-Entry%3CEntrySealed%2C%20STATE%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#235-239">source</a></span><ahref="#impl-Display-for-Entry%3CEntrySealed%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<STATE><aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/fmt/trait.Display.html"title="trait core::fmt::Display">Display</a> for <aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntrySealed.html"title="struct kanidmd_lib::entry::EntrySealed">EntrySealed</a>, STATE></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.fmt-1"class="method trait-impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#236-238">source</a></span><ahref="#method.fmt-1"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.64.0/core/fmt/trait.Display.html#tymethod.fmt"class="fnname">fmt</a>(&self, f: &mut <aclass="struct"href="https://doc.rust-lang.org/1.64.0/core/fmt/struct.Formatter.html"title="struct core::fmt::Formatter">Formatter</a><'_>) -><aclass="type"href="https://doc.rust-lang.org/1.64.0/core/fmt/type.Result.html"title="type core::fmt::Result">Result</a></h4></section></summary><divclass='docblock'><p>Formats the value using the given formatter. <ahref="https://doc.rust-lang.org/1.64.0/core/fmt/trait.Display.html#tymethod.fmt">Read more</a></p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-From%3C%26SchemaAttribute%3E-for-Entry%3CEntryInit%2C%20EntryNew%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2383-2422">source</a></span><ahref="#impl-From%3C%26SchemaAttribute%3E-for-Entry%3CEntryInit%2C%20EntryNew%3E"class="anchor"></a><h3class="code-header in-band">impl <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html"title="trait core::convert::From">From</a><&<aclass="struct"href="../schema/struct.SchemaAttribute.html"title="struct kanidmd_lib::schema::SchemaAttribute">SchemaAttribute</a>> for <aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntryInit.html"title="struct kanidmd_lib::entry::EntryInit">EntryInit</a>, <aclass="struct"href="struct.EntryNew.html"title="struct kanidmd_lib::entry::EntryNew">EntryNew</a>></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.from"class="method trait-impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2384-2421">source</a></span><ahref="#method.from"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from"class="fnname">from</a>(s: &<aclass="struct"href="../schema/struct.SchemaAttribute.html"title="struct kanidmd_lib::schema::SchemaAttribute">SchemaAttribute</a>) -> Self</h4></section></summary><divclass='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-From%3C%26SchemaClass%3E-for-Entry%3CEntryInit%2C%20EntryNew%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2424-2457">source</a></span><ahref="#impl-From%3C%26SchemaClass%3E-for-Entry%3CEntryInit%2C%20EntryNew%3E"class="anchor"></a><h3class="code-header in-band">impl <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html"title="trait core::convert::From">From</a><&<aclass="struct"href="../schema/struct.SchemaClass.html"title="struct kanidmd_lib::schema::SchemaClass">SchemaClass</a>> for <aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><<aclass="struct"href="struct.EntryInit.html"title="struct kanidmd_lib::entry::EntryInit">EntryInit</a>, <aclass="struct"href="struct.EntryNew.html"title="struct kanidmd_lib::entry::EntryNew">EntryNew</a>></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.from-1"class="method trait-impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2425-2456">source</a></span><ahref="#method.from-1"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from"class="fnname">from</a>(s: &<aclass="struct"href="../schema/struct.SchemaClass.html"title="struct kanidmd_lib::schema::SchemaClass">SchemaClass</a>) -> Self</h4></section></summary><divclass='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-PartialEq%3CEntry%3CVALID%2C%20STATE%3E%3E-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2367-2381">source</a></span><ahref="#impl-PartialEq%3CEntry%3CVALID%2C%20STATE%3E%3E-for-Entry%3CVALID%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<VALID, STATE><aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/cmp/trait.PartialEq.html"title="trait core::cmp::PartialEq">PartialEq</a><<aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><VALID, STATE>> for <aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><VALID, STATE></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.eq"class="method trait-impl has-srclink"><spanclass="rightside"><aclass="srclink"href="../../src/kanidmd_lib/entry.rs.html#2368-2380">source</a></span><ahref="#method.eq"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.64.0/core/cmp/trait.PartialEq.html#tymethod.eq"class="fnname">eq</a>(&self, rhs: &<aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><VALID, STATE>) -><aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.bool.html">bool</a></h4></section></summary><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/1.64.0/core/cmp/trait.PartialEq.html#tymethod.eq">Read more</a></p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.ne"class="method trait-impl has-srclink"><spanclass="rightside"><spanclass="since"title="Stable since Rust version 1.0.0">1.0.0</span> · <aclass="srclink"href="https://doc.rust-lang.org/1.64.0/src/core/cmp.rs.html#232">source</a></span><ahref="#method.ne"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.64.0/core/cmp/trait.PartialEq.html#method.ne"class="fnname">ne</a>(&self, other: <aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.reference.html">&</a>Rhs) -><aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.bool.html">bool</a></h4></section></summary><divclass='docblock'><p>This method tests for <code>!=</code>.</p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"><summary><sectionid="impl-Instrument-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#276">source</a></span><ahref="#impl-Instrument-for-Entry%3CVALID%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<T><aclass="trait"href="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.Instrument.html"title="trait tracing::instrument::Instrument">Instrument</a> for T</h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.instrument"class="method trait-impl has-srclink"><spanclass="rightside"><aclass="srclink"href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#82">source</a></span><ahref="#method.instrument"class="anchor"></a><h4class="code-header">fn <ahref="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.Instrument.html#method.instrument"class="fnname">instrument</a>(self, span: <aclass="struct"href="https://docs.rs/tracing/0.1.37/tracing/span/struct.Span.html"title="struct tracing::span::Span">Span</a>) -><aclass="struct"href="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.Instrumented.html"title="struct tracing::instrument::Instrumented">Instrumented</a><Self></h4></section></summary><divclass='docblock'><p>Instruments this type with the provided <ahref="https://docs.rs/tracing/0.1.37/tracing/span/struct.Span.html"title="Span"><code>Span</code></a>, returning an
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.in_current_span"class="method trait-impl has-srclink"><spanclass="rightside"><aclass="srclink"href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#121">source</a></span><ahref="#method.in_current_span"class="anchor"></a><h4class="code-header">fn <ahref="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.Instrument.html#method.in_current_span"class="fnname">in_current_span</a>(self) -><aclass="struct"href="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.Instrumented.html"title="struct tracing::instrument::Instrumented">Instrumented</a><Self></h4></section></summary><divclass='docblock'><p>Instruments this type with the <ahref="https://docs.rs/tracing/0.1.37/tracing/span/struct.Span.html#method.current">current</a><ahref="https://docs.rs/tracing/0.1.37/tracing/span/struct.Span.html"><code>Span</code></a>, returning an
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"><summary><sectionid="impl-Into%3CU%3E-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="https://doc.rust-lang.org/1.64.0/src/core/convert/mod.rs.html#541">source</a></span><ahref="#impl-Into%3CU%3E-for-Entry%3CVALID%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<T, U><aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/convert/trait.Into.html"title="trait core::convert::Into">Into</a><U> for T <spanclass="where fmt-newline">where<br> U: <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html"title="trait core::convert::From">From</a><T>, </span></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.into"class="method trait-impl has-srclink"><spanclass="rightside"><spanclass="since"title="const unstable">const: <ahref="https://github.com/rust-lang/rust/issues/88674"title="Tracking issue for const_convert">unstable</a></span> · <aclass="srclink"href="https://doc.rust-lang.org/1.64.0/src/core/convert/mod.rs.html#549">source</a></span><ahref="#method.into"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.64.0/core/convert/trait.Into.html#tymethod.into"class="fnname">into</a>(self) -> U</h4></section></summary><divclass="docblock"><p>Calls <code>U::from(self)</code>.</p>
<p>That is, this conversion is whatever the implementation of
<code><ahref="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html"title="From">From</a><T> for U</code> chooses to do.</p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"><summary><sectionid="impl-Pointable-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><ahref="#impl-Pointable-for-Entry%3CVALID%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<T> Pointable for T</h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle"open><summary><sectionid="associatedconstant.ALIGN"class="associatedconstant trait-impl has-srclink"><ahref="#associatedconstant.ALIGN"class="anchor"></a><h4class="code-header">const <aclass="constant">ALIGN</a>: <aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.usize.html">usize</a> = mem::align_of::<T>()</h4></section></summary><divclass='docblock'><p>The alignment of pointer.</p>
</div></details><detailsclass="rustdoc-toggle"open><summary><sectionid="associatedtype.Init"class="associatedtype trait-impl has-srclink"><ahref="#associatedtype.Init"class="anchor"></a><h4class="code-header">type <aclass="associatedtype">Init</a> = T</h4></section></summary><divclass='docblock'><p>The type for initializers.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.init"class="method trait-impl has-srclink"><ahref="#method.init"class="anchor"></a><h4class="code-header">unsafe fn <aclass="fnname">init</a>(init: <T as Pointable>::Init) -><aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.usize.html">usize</a></h4></section></summary><divclass='docblock'><p>Initializes a with the given initializer. <a>Read more</a></p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.deref"class="method trait-impl has-srclink"><ahref="#method.deref"class="anchor"></a><h4class="code-header">unsafe fn <aclass="fnname">deref</a><'a>(ptr: <aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.usize.html">usize</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.reference.html">&'a </a>T</h4></section></summary><divclass='docblock'><p>Dereferences the given pointer. <a>Read more</a></p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.deref_mut"class="method trait-impl has-srclink"><ahref="#method.deref_mut"class="anchor"></a><h4class="code-header">unsafe fn <aclass="fnname">deref_mut</a><'a>(ptr: <aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.usize.html">usize</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.reference.html">&'a mut </a>T</h4></section></summary><divclass='docblock'><p>Mutably dereferences the given pointer. <a>Read more</a></p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.drop"class="method trait-impl has-srclink"><ahref="#method.drop"class="anchor"></a><h4class="code-header">unsafe fn <aclass="fnname">drop</a>(ptr: <aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.usize.html">usize</a>)</h4></section></summary><divclass='docblock'><p>Drops the object pointed to by the given pointer. <a>Read more</a></p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"><summary><sectionid="impl-Same%3CT%3E-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="https://docs.rs/typenum/1.15.0/src/typenum/type_operators.rs.html#34">source</a></span><ahref="#impl-Same%3CT%3E-for-Entry%3CVALID%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<T><aclass="trait"href="https://docs.rs/typenum/1.15.0/typenum/type_operators/trait.Same.html"title="trait typenum::type_operators::Same">Same</a><T> for T</h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle"open><summary><sectionid="associatedtype.Output"class="associatedtype trait-impl has-srclink"><ahref="#associatedtype.Output"class="anchor"></a><h4class="code-header">type <ahref="https://docs.rs/typenum/1.15.0/typenum/type_operators/trait.Same.html#associatedtype.Output"class="associatedtype">Output</a> = T</h4></section></summary><divclass='docblock'><p>Should always be <code>Self</code></p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"><summary><sectionid="impl-ToOwned-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="https://doc.rust-lang.org/1.64.0/src/alloc/borrow.rs.html#83">source</a></span><ahref="#impl-ToOwned-for-Entry%3CVALID%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<T><aclass="trait"href="https://doc.rust-lang.org/1.64.0/alloc/borrow/trait.ToOwned.html"title="trait alloc::borrow::ToOwned">ToOwned</a> for T <spanclass="where fmt-newline">where<br> T: <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html"title="trait core::clone::Clone">Clone</a>, </span></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle"open><summary><sectionid="associatedtype.Owned"class="associatedtype trait-impl has-srclink"><ahref="#associatedtype.Owned"class="anchor"></a><h4class="code-header">type <ahref="https://doc.rust-lang.org/1.64.0/alloc/borrow/trait.ToOwned.html#associatedtype.Owned"class="associatedtype">Owned</a> = T</h4></section></summary><divclass='docblock'><p>The resulting type after obtaining ownership.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.to_owned"class="method trait-impl has-srclink"><spanclass="rightside"><aclass="srclink"href="https://doc.rust-lang.org/1.64.0/src/alloc/borrow.rs.html#88">source</a></span><ahref="#method.to_owned"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.64.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned"class="fnname">to_owned</a>(&self) -> T</h4></section></summary><divclass='docblock'><p>Creates owned data from borrowed data, usually by cloning. <ahref="https://doc.rust-lang.org/1.64.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.clone_into"class="method trait-impl has-srclink"><spanclass="rightside"><aclass="srclink"href="https://doc.rust-lang.org/1.64.0/src/alloc/borrow.rs.html#92">source</a></span><ahref="#method.clone_into"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.64.0/alloc/borrow/trait.ToOwned.html#method.clone_into"class="fnname">clone_into</a>(&self, target: <aclass="primitive"href="https://doc.rust-lang.org/1.64.0/std/primitive.reference.html">&mut </a>T)</h4></section></summary><divclass='docblock'><p>Uses borrowed data to replace owned data, usually by cloning. <ahref="https://doc.rust-lang.org/1.64.0/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"><summary><sectionid="impl-ToString-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="https://doc.rust-lang.org/1.64.0/src/alloc/string.rs.html#2479">source</a></span><ahref="#impl-ToString-for-Entry%3CVALID%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<T><aclass="trait"href="https://doc.rust-lang.org/1.64.0/alloc/string/trait.ToString.html"title="trait alloc::string::ToString">ToString</a> for T <spanclass="where fmt-newline">where<br> T: <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/fmt/trait.Display.html"title="trait core::fmt::Display">Display</a> + ?<aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>, </span></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.to_string"class="method trait-impl has-srclink"><spanclass="rightside"><aclass="srclink"href="https://doc.rust-lang.org/1.64.0/src/alloc/string.rs.html#2485">source</a></span><ahref="#method.to_string"class="anchor"></a><h4class="code-header">default fn <ahref="https://doc.rust-lang.org/1.64.0/alloc/string/trait.ToString.html#tymethod.to_string"class="fnname">to_string</a>(&self) -><aclass="struct"href="https://doc.rust-lang.org/1.64.0/alloc/string/struct.String.html"title="struct alloc::string::String">String</a></h4></section></summary><divclass='docblock'><p>Converts the given value to a <code>String</code>. <ahref="https://doc.rust-lang.org/1.64.0/alloc/string/trait.ToString.html#tymethod.to_string">Read more</a></p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"><summary><sectionid="impl-TryFrom%3CU%3E-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="https://doc.rust-lang.org/1.64.0/src/core/convert/mod.rs.html#598">source</a></span><ahref="#impl-TryFrom%3CU%3E-for-Entry%3CVALID%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<T, U><aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><U> for T <spanclass="where fmt-newline">where<br> U: <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/convert/trait.Into.html"title="trait core::convert::Into">Into</a><T>, </span></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle"open><summary><sectionid="associatedtype.Error"class="associatedtype trait-impl has-srclink"><ahref="#associatedtype.Error"class="anchor"></a><h4class="code-header">type <ahref="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html#associatedtype.Error"class="associatedtype">Error</a> = <aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/convert/enum.Infallible.html"title="enum core::convert::Infallible">Infallible</a></h4></section></summary><divclass='docblock'><p>The type returned in the event of a conversion error.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.try_from"class="method trait-impl has-srclink"><spanclass="rightside"><spanclass="since"title="const unstable">const: <ahref="https://github.com/rust-lang/rust/issues/88674"title="Tracking issue for const_convert">unstable</a></span> · <aclass="srclink"href="https://doc.rust-lang.org/1.64.0/src/core/convert/mod.rs.html#604">source</a></span><ahref="#method.try_from"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html#tymethod.try_from"class="fnname">try_from</a>(value: U) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/result/enum.Result.html"title="enum core::result::Result">Result</a><T, <T as <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><U>>::<aclass="associatedtype"href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html#associatedtype.Error"title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><divclass='docblock'><p>Performs the conversion.</p>
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"><summary><sectionid="impl-TryInto%3CU%3E-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><spanclass="rightside"><aclass="srclink"href="https://doc.rust-lang.org/1.64.0/src/core/convert/mod.rs.html#583">source</a></span><ahref="#impl-TryInto%3CU%3E-for-Entry%3CVALID%2C%20STATE%3E"class="anchor"></a><h3class="code-header in-band">impl<T, U><aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryInto.html"title="trait core::convert::TryInto">TryInto</a><U> for T <spanclass="where fmt-newline">where<br> U: <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><T>, </span></h3></section></summary><divclass="impl-items"><detailsclass="rustdoc-toggle"open><summary><sectionid="associatedtype.Error-1"class="associatedtype trait-impl has-srclink"><ahref="#associatedtype.Error-1"class="anchor"></a><h4class="code-header">type <ahref="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryInto.html#associatedtype.Error"class="associatedtype">Error</a> = <U as <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><T>>::<aclass="associatedtype"href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html#associatedtype.Error"title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><divclass='docblock'><p>The type returned in the event of a conversion error.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.try_into"class="method trait-impl has-srclink"><spanclass="rightside"><spanclass="since"title="const unstable">const: <ahref="https://github.com/rust-lang/rust/issues/88674"title="Tracking issue for const_convert">unstable</a></span> · <aclass="srclink"href="https://doc.rust-lang.org/1.64.0/src/core/convert/mod.rs.html#589">source</a></span><ahref="#method.try_into"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryInto.html#tymethod.try_into"class="fnname">try_into</a>(self) -><aclass="enum"href="https://doc.rust-lang.org/1.64.0/core/result/enum.Result.html"title="enum core::result::Result">Result</a><U, <U as <aclass="trait"href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><T>>::<aclass="associatedtype"href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html#associatedtype.Error"title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><divclass='docblock'><p>Performs the conversion.</p>
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.with_current_subscriber"class="method trait-impl has-srclink"><spanclass="rightside"><aclass="srclink"href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#221">source</a></span><ahref="#method.with_current_subscriber"class="anchor"></a><h4class="code-header">fn <ahref="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.WithSubscriber.html#method.with_current_subscriber"class="fnname">with_current_subscriber</a>(self) -><aclass="struct"href="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.WithDispatch.html"title="struct tracing::instrument::WithDispatch">WithDispatch</a><Self></h4></section></summary><divclass='docblock'><p>Attaches the current <ahref="https://docs.rs/tracing/0.1.37/tracing/dispatcher/index.html#setting-the-default-subscriber">default</a><ahref="https://docs.rs/tracing-core/0.1.22/tracing_core/subscriber/trait.Subscriber.html"><code>Subscriber</code></a> to this type, returning a