pub struct DelegationResolver;Expand description
Delegation resolver for handling complex delegation paths
Implementations§
Source§impl DelegationResolver
impl DelegationResolver
Sourcepub async fn resolve_delegation_path_with_depth(
&mut self,
steps: &[DelegationStep],
final_hint: &KeyHint,
auth_settings: &AuthSettings,
instance: &Instance,
_depth: usize,
) -> Result<Vec<ResolvedAuth>>
pub async fn resolve_delegation_path_with_depth( &mut self, steps: &[DelegationStep], final_hint: &KeyHint, auth_settings: &AuthSettings, instance: &Instance, _depth: usize, ) -> Result<Vec<ResolvedAuth>>
Resolve delegation path using flat list structure
This iteratively processes each step in the delegation path, applying permission clamping at each level. The final hint is resolved in the last delegated tree’s auth settings.
Returns all matching ResolvedAuth entries. For name hints that match multiple keys at the final step, all matches are returned with the same permission clamping applied to each.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for DelegationResolver
impl RefUnwindSafe for DelegationResolver
impl Send for DelegationResolver
impl Sync for DelegationResolver
impl Unpin for DelegationResolver
impl UnwindSafe for DelegationResolver
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
Mutably borrows from an owned value. Read more
§impl<T> CompatExt for T
impl<T> CompatExt for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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>
Converts
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>
Converts
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 more