#[non_exhaustive]pub enum AccessRightsDecision {
Exempt,
#[non_exhaustive] Granted {
rule: AccessRulePosition,
},
#[non_exhaustive] Denied {
access_event: AccessEvent,
rule: Option<AccessRulePosition>,
},
}Expand description
The outcome of the Access Rights check (Clause 12.34.9.2).
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Exempt
The credential’s Authorization_Exemptions lists ACCESS_RIGHTS, so the check didn’t run and counts as passed (Clause 12.35.25).
#[non_exhaustive]Granted
No negative rule held, and this positive rule did: the first in gathering and array order.
Fields
This variant is marked as non-exhaustive
rule: AccessRulePositionThe positive rule that granted access.
#[non_exhaustive]Denied
The check failed.
Fields
This variant is marked as non-exhaustive
access_event: AccessEventThe Access_Event value Clause 12.34.9.2 gives this failure: DENIED_POINT_NO_ACCESS_RIGHTS or DENIED_ZONE_NO_ACCESS_RIGHTS for a negative rule, DENIED_OUT_OF_TIME_RANGE, or DENIED_NO_ACCESS_RIGHTS. The evaluator doesn’t write it.
rule: Option<AccessRulePosition>The rule behind the denial: the negative rule that held, or, for
DENIED_OUT_OF_TIME_RANGE, the first positive rule that covered
the point while a value read for its time range was FALSE. None
for DENIED_NO_ACCESS_RIGHTS.
Implementations§
Source§impl AccessRightsDecision
impl AccessRightsDecision
Sourcepub fn access_event(&self) -> Option<AccessEvent>
pub fn access_event(&self) -> Option<AccessEvent>
The Access_Event value of a denial, None otherwise.
Sourcepub fn rule(&self) -> Option<AccessRulePosition>
pub fn rule(&self) -> Option<AccessRulePosition>
The rule the decision names: the granting rule, or a denial’s rule when it has one.