pub enum UserId {
Integer(i64),
String(String),
}Expand description
user identity as accepted by the Odoo-facing call contract
Odoo normally uses integer user ids, while legacy and test callers may send
string ids
the runtime canonicalizes numeric strings before indexing room
state so "42" and 42 cannot become two live users in the same call
non-numeric strings remain valid compatibility ids
Variants§
Implementations§
Source§impl UserId
impl UserId
Sourcepub fn path_segment(&self) -> Cow<'_, str>
pub fn path_segment(&self) -> Cow<'_, str>
return the path representation used by diagnostics and bundle keys string ids retain their raw representation
Sourcepub fn normalized_for_runtime(self) -> UserId
pub fn normalized_for_runtime(self) -> UserId
return the runtime key form for this user id
numeric strings are parsed into Self::Integer so all room state,
diagnostics lookup, disconnect handling and subscription logic use one
canonical key
non-numeric strings are preserved as compatibility identities
Sourcepub fn runtime_normalized(&self) -> UserId
pub fn runtime_normalized(&self) -> UserId
borrowing variant of Self::normalized_for_runtime
use this when the caller owns a borrowed auth or protocol payload and needs the canonical runtime key without consuming that payload
Trait Implementations§
Source§impl<'de> Deserialize<'de> for UserId
impl<'de> Deserialize<'de> for UserId
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<UserId, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<UserId, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl Ord for UserId
impl Ord for UserId
Source§impl PartialOrd for UserId
impl PartialOrd for UserId
Source§impl Serialize for UserId
impl Serialize for UserId
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl Eq for UserId
impl StructuralPartialEq for UserId
Auto Trait Implementations§
impl Freeze for UserId
impl RefUnwindSafe for UserId
impl Send for UserId
impl Sync for UserId
impl Unpin for UserId
impl UnsafeUnpin for UserId
impl UnwindSafe for UserId
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,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§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>
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 more