pub struct UserIdentity {
pub username: String,
pub display_name: String,
pub rank: MilitaryRank,
pub clearance: SecurityClearance,
pub unit: OrganizationUnit,
pub roles: HashSet<Role>,
}Expand description
Complete user identity for human operators.
Fields§
§username: StringUsername (e.g., call sign like “alpha_6”)
display_name: StringDisplay name (e.g., “CPT John Smith”)
rank: MilitaryRankMilitary rank
clearance: SecurityClearanceSecurity clearance level
unit: OrganizationUnitOrganizational unit
roles: HashSet<Role>Roles for RBAC authorization
Implementations§
Source§impl UserIdentity
impl UserIdentity
Sourcepub fn builder(username: impl Into<String>) -> UserIdentityBuilder
pub fn builder(username: impl Into<String>) -> UserIdentityBuilder
Create a builder for UserIdentity.
Trait Implementations§
Source§impl Clone for UserIdentity
impl Clone for UserIdentity
Source§fn clone(&self) -> UserIdentity
fn clone(&self) -> UserIdentity
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for UserIdentity
impl Debug for UserIdentity
Source§impl<'de> Deserialize<'de> for UserIdentity
impl<'de> Deserialize<'de> for UserIdentity
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for UserIdentity
impl RefUnwindSafe for UserIdentity
impl Send for UserIdentity
impl Sync for UserIdentity
impl Unpin for UserIdentity
impl UnsafeUnpin for UserIdentity
impl UnwindSafe for UserIdentity
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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