#[non_exhaustive]pub struct MatchingRuleAssertion {
pub matching_rule: Option<MatchingRuleId>,
pub type: Option<AttributeDescription>,
pub match_value: AssertionValue,
pub dn_attributes: bool,
}Expand description
Extensible match rule assertion.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.matching_rule: Option<MatchingRuleId>If the matching_rule is absent, the type field MUST be
present, and an equality match is performed for that type.
type: Option<AttributeDescription>The type match against if matching_rule is absent.
match_value: AssertionValueThe value to match against.
If the type field is absent and the matching_rule is present,
match_value is compared against all attributes in an entry that
support that matching_rule.
If the type field is present and the matching_rule is present, the
match_value is compared against the specified attribute type and
its subtypes.
dn_attributes: boolIf the dnAttributes field is set to true, the match is additionally
applied against all the AttributeValueAssertions in an entry’s
distinguished name, and it evaluates to TRUE if there is at least one
attribute or subtype in the distinguished name for which the filter
item evaluates to true. The dnAttributes field is present to
alleviate the need for multiple versions of generic matching rules
(such as word matching), where one applies to entries and another
applies to entries and DN attributes as well.
Implementations§
Source§impl MatchingRuleAssertion
impl MatchingRuleAssertion
Sourcepub fn new(
matching_rule: Option<MatchingRuleId>,
type: Option<AttributeDescription>,
match_value: AssertionValue,
dn_attributes: bool,
) -> Self
pub fn new( matching_rule: Option<MatchingRuleId>, type: Option<AttributeDescription>, match_value: AssertionValue, dn_attributes: bool, ) -> Self
MatchingRuleAssertion constructor
Trait Implementations§
Source§impl AsnType for MatchingRuleAssertion
impl AsnType for MatchingRuleAssertion
Source§const IDENTIFIER: Identifier
const IDENTIFIER: Identifier
SelfSource§const CONSTRAINTS: Constraints
const CONSTRAINTS: Constraints
Source§const TAG_TREE: TagTree = _
const TAG_TREE: TagTree = _
Leaf that points Self::TAG.Source§const IS_CHOICE: bool = false
const IS_CHOICE: bool = false
Source§fn is_present(&self) -> bool
fn is_present(&self) -> bool
Source§impl Clone for MatchingRuleAssertion
impl Clone for MatchingRuleAssertion
Source§fn clone(&self) -> MatchingRuleAssertion
fn clone(&self) -> MatchingRuleAssertion
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Constructed<4> for MatchingRuleAssertion
impl Constructed<4> for MatchingRuleAssertion
Source§impl Debug for MatchingRuleAssertion
impl Debug for MatchingRuleAssertion
Source§impl Decode for MatchingRuleAssertion
impl Decode for MatchingRuleAssertion
Source§fn decode_with_tag_and_constraints<_DECODER: Decoder>(
decoder: &mut _DECODER,
tag: Tag,
constraints: Constraints,
) -> Result<Self, _DECODER::Error>
fn decode_with_tag_and_constraints<_DECODER: Decoder>( decoder: &mut _DECODER, tag: Tag, constraints: Constraints, ) -> Result<Self, _DECODER::Error>
tag from a given ASN.1
decoder with a set of constraints on what values of that type are allowed. Read moreSource§fn decode<D>(decoder: &mut D) -> Result<Self, <D as Decoder>::Error>where
D: Decoder,
fn decode<D>(decoder: &mut D) -> Result<Self, <D as Decoder>::Error>where
D: Decoder,
Source§fn decode_with_tag<D>(
decoder: &mut D,
tag: Tag,
) -> Result<Self, <D as Decoder>::Error>where
D: Decoder,
fn decode_with_tag<D>(
decoder: &mut D,
tag: Tag,
) -> Result<Self, <D as Decoder>::Error>where
D: Decoder,
tag from a given ASN.1 decoder. Read moreSource§fn decode_with_constraints<D>(
decoder: &mut D,
constraints: Constraints,
) -> Result<Self, <D as Decoder>::Error>where
D: Decoder,
fn decode_with_constraints<D>(
decoder: &mut D,
constraints: Constraints,
) -> Result<Self, <D as Decoder>::Error>where
D: Decoder,
Source§impl Encode for MatchingRuleAssertion
impl Encode for MatchingRuleAssertion
Source§fn encode_with_tag_and_constraints<'encoder, _ENCODER: Encoder<'encoder>>(
&self,
encoder: &mut _ENCODER,
tag: Tag,
constraints: Constraints,
identifier: Identifier,
) -> Result<(), _ENCODER::Error>
fn encode_with_tag_and_constraints<'encoder, _ENCODER: Encoder<'encoder>>( &self, encoder: &mut _ENCODER, tag: Tag, constraints: Constraints, identifier: Identifier, ) -> Result<(), _ENCODER::Error>
tag into the given crate::Encoder with the
constraints the values this is allowed to encode into. Read moreSource§fn encode<'b, E>(
&self,
encoder: &mut E,
) -> Result<(), <E as Encoder<'b>>::Error>where
E: Encoder<'b>,
fn encode<'b, E>(
&self,
encoder: &mut E,
) -> Result<(), <E as Encoder<'b>>::Error>where
E: Encoder<'b>,
Source§fn encode_with_tag<'b, E>(
&self,
encoder: &mut E,
tag: Tag,
) -> Result<(), <E as Encoder<'b>>::Error>where
E: Encoder<'b>,
fn encode_with_tag<'b, E>(
&self,
encoder: &mut E,
tag: Tag,
) -> Result<(), <E as Encoder<'b>>::Error>where
E: Encoder<'b>,
Source§fn encode_with_identifier<'b, E>(
&self,
encoder: &mut E,
identifier: Identifier,
) -> Result<(), <E as Encoder<'b>>::Error>where
E: Encoder<'b>,
fn encode_with_identifier<'b, E>(
&self,
encoder: &mut E,
identifier: Identifier,
) -> Result<(), <E as Encoder<'b>>::Error>where
E: Encoder<'b>,
Source§fn encode_with_tag_and_identifier<'b, E>(
&self,
encoder: &mut E,
tag: Tag,
identifier: Identifier,
) -> Result<(), <E as Encoder<'b>>::Error>where
E: Encoder<'b>,
fn encode_with_tag_and_identifier<'b, E>(
&self,
encoder: &mut E,
tag: Tag,
identifier: Identifier,
) -> Result<(), <E as Encoder<'b>>::Error>where
E: Encoder<'b>,
Source§fn encode_with_constraints<'b, E>(
&self,
encoder: &mut E,
constraints: Constraints,
) -> Result<(), <E as Encoder<'b>>::Error>where
E: Encoder<'b>,
fn encode_with_constraints<'b, E>(
&self,
encoder: &mut E,
constraints: Constraints,
) -> Result<(), <E as Encoder<'b>>::Error>where
E: Encoder<'b>,
crate::Encoder with the
constraints the values this is allowed to encode into. Read moreSource§fn encode_with_constraints_and_identifier<'b, E>(
&self,
encoder: &mut E,
constraints: Constraints,
identifier: Identifier,
) -> Result<(), <E as Encoder<'b>>::Error>where
E: Encoder<'b>,
fn encode_with_constraints_and_identifier<'b, E>(
&self,
encoder: &mut E,
constraints: Constraints,
identifier: Identifier,
) -> Result<(), <E as Encoder<'b>>::Error>where
E: Encoder<'b>,
crate::Encoder with identifier and the
constraints the values this is allowed to encode into. Read moreSource§impl Hash for MatchingRuleAssertion
impl Hash for MatchingRuleAssertion
Source§impl Ord for MatchingRuleAssertion
impl Ord for MatchingRuleAssertion
Source§fn cmp(&self, other: &MatchingRuleAssertion) -> Ordering
fn cmp(&self, other: &MatchingRuleAssertion) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for MatchingRuleAssertion
impl PartialEq for MatchingRuleAssertion
Source§impl PartialOrd for MatchingRuleAssertion
impl PartialOrd for MatchingRuleAssertion
impl Eq for MatchingRuleAssertion
impl StructuralPartialEq for MatchingRuleAssertion
Auto Trait Implementations§
impl !Freeze for MatchingRuleAssertion
impl RefUnwindSafe for MatchingRuleAssertion
impl Send for MatchingRuleAssertion
impl Sync for MatchingRuleAssertion
impl Unpin for MatchingRuleAssertion
impl UnwindSafe for MatchingRuleAssertion
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self to use its Binary implementation when Debug-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self to use its Display implementation when
Debug-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self to use its LowerExp implementation when
Debug-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self to use its LowerHex implementation when
Debug-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self to use its Octal implementation when Debug-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self to use its Pointer implementation when
Debug-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self to use its UpperExp implementation when
Debug-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self to use its UpperHex implementation when
Debug-formatted.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self, then passes self.as_ref() into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self, then passes self.as_mut() into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self, then passes self.deref() into the pipe function.Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B> of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B> of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R> view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R> view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap() only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow() only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut() only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref() only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut() only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref() only in debug builds, and is erased in release
builds.