pub struct UserData { /* private fields */ }
Expand description

A wrapper for user data, able to store any type, and correctly handling access from a wrong thread

Implementations§

Create a new UserData using a threadsafe type

Its contents can be accessed from any thread.

Create a new UserData using a non-threadsafe type

Its contents can only be accessed from the same thread as the one you are creating it.

Create a new UserData containing nothing

Attempt to access the wrapped user data

Will return None if either:

  • The requested type T does not match the type used for construction
  • This UserData has been created using the non-threadsafe variant and access is attempted from an other thread than the one it was created on

Trait Implementations§

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.