<!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"href="../../normalize.css"><linkrel="stylesheet"href="../../rustdoc.css"id="mainThemeStyle"><linkrel="stylesheet"href="../../ayu.css"disabled><linkrel="stylesheet"href="../../dark.css"disabled><linkrel="stylesheet"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_oauth2session_map">get_ava_as_oauth2session_map</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_a
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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#264-608">source</a><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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#265-273">source</a><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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#277-314">source</a><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.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#318">source</a><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.65.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.65.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
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.assign_cid"class="method has-srclink"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#498-518">source</a><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
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.compare"class="method has-srclink"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#521-523">source</a><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.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#593-595">source</a><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.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#598-603">source</a><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.65.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.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#605-607">source</a><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.65.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#610-868">source</a><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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#618-867">source</a><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.65.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’
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Entry%3CEntryInvalid%2C%20EntryCommitted%3E"class="impl has-srclink"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#889-933">source</a><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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#905-917">source</a><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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#920-932">source</a><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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1021-1044">source</a><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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1033-1039">source</a><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.65.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
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.reduce_attributes"class="method has-srclink"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1534-1561">source</a><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.65.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
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.to_tombstone"class="method has-srclink"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1564-1584">source</a><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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1587-1597">source</a><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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1696-1764">source</a><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.65.0/std/primitive.str.html">str</a>,<br> all_attrs: <aclass="primitive"href="https://doc.rust-lang.org/1.65.0/std/primitive.bool.html">bool</a>,<br> l_attrs: &[<aclass="struct"href="https://doc.rust-lang.org/1.65.0/alloc/string/struct.String.html"title="struct alloc::string::String">String</a>]<br>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1768-2277">source</a><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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1815-1818">source</a><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.65.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.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1830-1832">source</a><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.65.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1886-1888">source</a><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.65.0/std/primitive.str.html">str</a><br>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><impl <aclass="trait"href="https://doc.rust-lang.org/1.65.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.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1892-1895">source</a><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.65.0/std/primitive.str.html">str</a><br>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="struct"href="https://doc.rust-lang.org/1.65.0/alloc/boxed/struct.Box.html"title="struct alloc::boxed::Box">Box</a><dyn <aclass="trait"href="https://doc.rust-lang.org/1.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1899-1902">source</a><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.65.0/std/primitive.str.html">str</a><br>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><impl <aclass="trait"href="https://doc.rust-lang.org/1.65.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.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1926-1928">source</a><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.65.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.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
</div></details><sectionid="method.get_ava_single_proto_string"class="method has-srclink"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1930-1934">source</a><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.65.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="struct"href="https://doc.rust-lang.org/1.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1938-1940">source</a><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.65.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="primitive"href="https://doc.rust-lang.org/1.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1944-1946">source</a><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.65.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="primitive"href="https://doc.rust-lang.org/1.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1950-1954">source</a><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.65.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1958-1962">source</a><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.65.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1966-1968">source</a><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.65.0/std/primitive.str.html">str</a><br>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><&<aclass="struct"href="https://doc.rust-lang.org/1.65.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.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1972-1974">source</a><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.65.0/std/primitive.str.html">str</a><br>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><&<aclass="struct"href="https://doc.rust-lang.org/1.65.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.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1978-1980">source</a><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.65.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><&<aclass="primitive"href="https://doc.rust-lang.org/1.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#1984-1986">source</a><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.65.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#2008-2010">source</a><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.65.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#2038-2042">source</a><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.65.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><&[<aclass="primitive"href="https://doc.rust-lang.org/1.65.0/std/primitive.u8.html">u8</a>]></h4></section><sectionid="method.get_ava_single_jws_key_es256"class="method has-srclink"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#2044-2048">source</a><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.65.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#2059-2061">source</a><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.65.0/std/primitive.str.html">str</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#2066-2075">source</a><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.65.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.65.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
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.attribute_substring"class="method has-srclink"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#2080-2085">source</a><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.65.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.65.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
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.attribute_lessthan"class="method has-srclink"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#2090-2095">source</a><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.65.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.65.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
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.entry_match_no_index"class="method has-srclink"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#2103-2106">source</a><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.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#2142-2174">source</a><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.65.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
</div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.gen_modlist_assert"class="method has-srclink"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#2178-2226">source</a><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.65.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”
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"open><summary><sectionid="impl-Entry%3CEntryInvalid%2C%20STATE%3E-1"class="impl has-srclink"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#2279-2379">source</a><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.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#2287-2292">source</a><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.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#2338-2341">source</a><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.65.0/std/primitive.str.html">str</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.65.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"><aclass="srclink rightside"href="../../src/kanidmd_lib/entry.rs.html#2345-2354">source</a><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.65.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.65.0/core/clone/trait.Clone.html"title="trait core::clone::Clone">Clone</a> + <aclass="trait"href="https://doc.rust-lang.org/1.65.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
by <code>==</code>. <ahref="https://doc.rust-lang.org/1.65.0/core/cmp/trait.PartialEq.html#tymethod.eq">Read more</a></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.65.0/src/core/cmp.rs.html#236">source</a></span><ahref="#method.ne"class="anchor"></a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.65.0/core/cmp/trait.PartialEq.html#method.ne"class="fnname">ne</a>(&self, other: <aclass="primitive"href="https://doc.rust-lang.org/1.65.0/std/primitive.reference.html">&</a>Rhs) -><aclass="primitive"href="https://doc.rust-lang.org/1.65.0/std/primitive.bool.html">bool</a></h4></section></summary><divclass='docblock'>This method tests for <code>!=</code>. The default implementation is almost always
sufficient, and should not be overridden without very good reason. <ahref="https://doc.rust-lang.org/1.65.0/core/cmp/trait.PartialEq.html#method.ne">Read more</a></div></details></div></details></div><h2id="synthetic-implementations"class="small-section-header">Auto Trait Implementations<ahref="#synthetic-implementations"class="anchor"></a></h2><divid="synthetic-implementations-list"><sectionid="impl-RefUnwindSafe-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><ahref="#impl-RefUnwindSafe-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.65.0/core/panic/unwind_safe/trait.RefUnwindSafe.html"title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><VALID, STATE></h3></section><sectionid="impl-Send-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><ahref="#impl-Send-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.65.0/core/marker/trait.Send.html"title="trait core::marker::Send">Send</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.65.0/core/marker/trait.Send.html"title="trait core::marker::Send">Send</a>,<br> VALID: <aclass="trait"href="https://doc.rust-lang.org/1.65.0/core/marker/trait.Send.html"title="trait core::marker::Send">Send</a>,</span></h3></section><sectionid="impl-Sync-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><ahref="#impl-Sync-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.65.0/core/marker/trait.Sync.html"title="trait core::marker::Sync">Sync</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.65.0/core/marker/trait.Sync.html"title="trait core::marker::Sync">Sync</a>,<br> VALID: <aclass="trait"href="https://doc.rust-lang.org/1.65.0/core/marker/trait.Sync.html"title="trait core::marker::Sync">Sync</a>,</span></h3></section><sectionid="impl-Unpin-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><ahref="#impl-Unpin-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.65.0/core/marker/trait.Unpin.html"title="trait core::marker::Unpin">Unpin</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.65.0/core/marker/trait.Unpin.html"title="trait core::marker::Unpin">Unpin</a>,<br> VALID: <aclass="trait"href="https://doc.rust-lang.org/1.65.0/core/marker/trait.Unpin.html"title="trait core::marker::Unpin">Unpin</a>,</span></h3></section><sectionid="impl-UnwindSafe-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><ahref="#impl-UnwindSafe-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.65.0/core/panic/unwind_safe/trait.UnwindSafe.html"title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <aclass="struct"href="struct.Entry.html"title="struct kanidmd_lib::entry::Entry">Entry</a><VALID, STATE></h3></section></div><h2id="blanket-implementations"class="small-section-header">Blanket Implementations<ahref="#blanket-implementa
</div></details></div></details><detailsclass="rustdoc-toggle implementors-toggle"><summary><sectionid="impl-Instrument-for-Entry%3CVALID%2C%20STATE%3E"class="impl has-srclink"><aclass="srclink rightside"href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#276">source</a><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"><aclass="srclink rightside"href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#82">source</a><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'>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
<code>Instrumented</code> wrapper. <ahref="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.Instrument.html#method.instrument">Read more</a></div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.in_current_span"class="method trait-impl has-srclink"><aclass="srclink rightside"href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#121">source</a><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'>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
<code><ahref="https://doc.rust-lang.org/1.65.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.65.0/std/primitive.usize.html">usize</a> = mem::align_of::<T>()</h4></section></summary><divclass='docblock'>The alignment of pointer.</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'>The type for initializers.</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.65.0/std/primitive.usize.html">usize</a></h4></section></summary><divclass='docblock'>Initializes a with the given initializer. <a>Read more</a></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.65.0/std/primitive.usize.html">usize</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.65.0/std/primitive.reference.html">&'a </a>T</h4></section></summary><divclass='docblock'>Dereferences the given pointer. <a>Read more</a></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.65.0/std/primitive.usize.html">usize</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.65.0/std/primitive.reference.html">&'a mut </a>T</h4></section></summary><divclass='docblock'>Mutably dereferences the given pointer. <a>Read more</a></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.65.0/std/primitive.usize.html">usize</a>)</h4></section></summary><divclass='docblock'>Drops the object pointed to by the given pointer. <a>Read more</a></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"><aclass="srclink rightside"href="https://docs.rs/typenum/1.15.0/src/typenum/type_operators.rs.html#34">source</a><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://doc
<ahref="https://docs.rs/tracing/0.1.37/tracing/instrument/struct.WithDispatch.html"title="WithDispatch"><code>WithDispatch</code></a> wrapper. <ahref="https://docs.rs/tracing/0.1.37/tracing/instrument/trait.WithSubscriber.html#method.with_subscriber">Read more</a></div></details><detailsclass="rustdoc-toggle method-toggle"open><summary><sectionid="method.with_current_subscriber"class="method trait-impl has-srclink"><aclass="srclink rightside"href="https://docs.rs/tracing/0.1.37/src/tracing/instrument.rs.html#221">source</a><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'>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