[−][src]Struct matrix_sdk_base::BaseClient
A no IO Client implementation.
This Client is a state machine that receives responses and events and accordingly updates its state.
Implementations
impl BaseClient
[src]
pub fn new() -> Result<Self>
[src]
Create a new default client.
pub fn new_with_config(config: BaseClientConfig) -> Result<Self>
[src]
Create a new client.
Arguments
config
- An optional session if the user already has one from a previous login call.
pub fn session(&self) -> &Arc<RwLock<Option<Session>>>
[src]
The current client session containing our user id, device id and access token.
pub async fn logged_in(&self) -> bool
[src]
Is the client logged in.
pub async fn add_event_emitter(&self, emitter: Box<dyn EventEmitter>)
[src]
Add EventEmitter
to Client
.
The methods of EventEmitter
are called when the respective RoomEvents
occur.
pub async fn store_room_state(&self, room_id: &RoomId) -> Result<()>
[src]
When a client is provided the state store will load state from the StateStore
.
Returns true
when a state store sync has successfully completed.
pub async fn receive_login_response(&self, response: &Response) -> Result<()>
[src]
Receive a login response and update the session of the client.
Arguments
response
- A successful login response that contains our access token and device id.
pub async fn restore_login(&self, session: Session) -> Result<()>
[src]
Restore a previously logged in session.
Arguments
session
- An session that the user already has from a previous login call.
pub async fn get_joined_room(
&self,
room_id: &RoomId
) -> Option<Arc<RwLock<Room>>>
[src]
&self,
room_id: &RoomId
) -> Option<Arc<RwLock<Room>>>
Get a joined room with the given room id.
Arguments
room_id
- The unique id of the room that should be fetched.
pub fn joined_rooms(&self) -> Arc<RwLock<HashMap<RoomId, Arc<RwLock<Room>>>>>
[src]
Returns the joined rooms this client knows about.
A HashMap
of room id to matrix::models::Room
pub async fn get_invited_room(
&self,
room_id: &RoomId
) -> Option<Arc<RwLock<Room>>>
[src]
&self,
room_id: &RoomId
) -> Option<Arc<RwLock<Room>>>
Get an invited room with the given room id.
Arguments
room_id
- The unique id of the room that should be fetched.
pub fn invited_rooms(&self) -> Arc<RwLock<HashMap<RoomId, Arc<RwLock<Room>>>>>
[src]
Returns the invited rooms this client knows about.
A HashMap
of room id to matrix::models::Room
pub async fn get_left_room(&self, room_id: &RoomId) -> Option<Arc<RwLock<Room>>>
[src]
Get an left room with the given room id.
Arguments
room_id
- The unique id of the room that should be fetched.
pub fn left_rooms(&self) -> Arc<RwLock<HashMap<RoomId, Arc<RwLock<Room>>>>>
[src]
Returns the left rooms this client knows about.
A HashMap
of room id to matrix::models::Room
pub async fn receive_joined_timeline_event(
&self,
room_id: &RoomId,
event: &mut Raw<AnySyncRoomEvent>
) -> Result<bool>
[src]
&self,
room_id: &RoomId,
event: &mut Raw<AnySyncRoomEvent>
) -> Result<bool>
Receive a timeline event for a joined room and update the client state.
Returns a bool, true when the Room
state has been updated.
This will in-place replace the event with a decrypted one if the encryption feature is turned on, the event is encrypted and if we successfully decrypted the event.
Arguments
-
room_id
- The unique id of the room the event belongs to. -
event
- The event that should be handled by the client.
pub async fn receive_joined_state_event(
&self,
room_id: &RoomId,
event: &AnySyncStateEvent
) -> Result<bool>
[src]
&self,
room_id: &RoomId,
event: &AnySyncStateEvent
) -> Result<bool>
Receive a state event for a joined room and update the client state.
Returns true if the state of the room changed, false otherwise.
Arguments
-
room_id
- The unique id of the room the event belongs to. -
event
- The event that should be handled by the client.
pub async fn receive_invite_state_event(
&self,
room_id: &RoomId,
event: &AnyStrippedStateEvent
) -> Result<bool>
[src]
&self,
room_id: &RoomId,
event: &AnyStrippedStateEvent
) -> Result<bool>
Receive a state event for a room the user has been invited to.
Returns true if the state of the room changed, false otherwise.
Arguments
-
room_id
- The unique id of the room the event belongs to. -
event
- AAnyStrippedStateEvent
that should be handled by the client.
pub async fn receive_left_timeline_event(
&self,
room_id: &RoomId,
event: &Raw<AnySyncRoomEvent>
) -> Result<bool>
[src]
&self,
room_id: &RoomId,
event: &Raw<AnySyncRoomEvent>
) -> Result<bool>
Receive a timeline event for a room the user has left and update the client state.
Returns a tuple of the successfully decrypted event, or None on failure and
a bool, true when the Room
state has been updated.
Arguments
-
room_id
- The unique id of the room the event belongs to. -
event
- The event that should be handled by the client.
pub async fn receive_left_state_event(
&self,
room_id: &RoomId,
event: &AnySyncStateEvent
) -> Result<bool>
[src]
&self,
room_id: &RoomId,
event: &AnySyncStateEvent
) -> Result<bool>
Receive a state event for a room the user has left and update the client state.
Returns true if the state of the room changed, false otherwise.
Arguments
-
room_id
- The unique id of the room the event belongs to. -
event
- The event that should be handled by the client.
pub async fn receive_presence_event(
&self,
room_id: &RoomId,
event: &PresenceEvent
) -> bool
[src]
&self,
room_id: &RoomId,
event: &PresenceEvent
) -> bool
Receive a presence event from a sync response and updates the client state.
Returns true if the state of the room changed, false otherwise.
Arguments
-
room_id
- The unique id of the room the event belongs to. -
event
- The event that should be handled by the client.
pub async fn receive_room_account_data_event(
&self,
_: &RoomId,
event: &AnyBasicEvent
) -> bool
[src]
&self,
_: &RoomId,
event: &AnyBasicEvent
) -> bool
Receive an account data event associated to a room from a sync response and updates the client state.
Returns true if the state of the Room
has changed, false otherwise.
Arguments
-
room_id
- The unique id of the room the event belongs to. -
event
- The presence event for a specified room member.
pub async fn receive_account_data_event(
&self,
event: &AnyBasicEvent
) -> Vec<Arc<RwLock<Room>>>
[src]
&self,
event: &AnyBasicEvent
) -> Vec<Arc<RwLock<Room>>>
Receive an account data event from a sync response and updates the client state.
Returns true if the state of any room has changed, false otherwise.
Arguments
event
- The presence event for a specified room member.
pub async fn receive_ephemeral_event(
&self,
event: &AnySyncEphemeralRoomEvent
) -> bool
[src]
&self,
event: &AnySyncEphemeralRoomEvent
) -> bool
Receive an ephemeral event from a sync response and updates the client state.
Returns true if the state of the Room
has changed, false otherwise.
Arguments
-
room_id
- The unique id of the room the event belongs to. -
event
- The presence event for a specified room member.
pub async fn sync_token(&self) -> Option<String>
[src]
Get the current, if any, sync token of the client. This will be None if the client didn't sync at least once.
pub async fn receive_sync_response(&self, response: &mut Response) -> Result<()>
[src]
Receive a response from a sync call.
Arguments
response
- The response that we received after a successful sync.
pub async fn should_share_group_session(&self, room_id: &RoomId) -> bool
[src]
encryption
only.Should the client share a group session for the given room.
Returns true if a session needs to be shared before room messages can be encrypted, false if one is already shared and ready to encrypt room messages.
This should be called every time a new room message wants to be sent out since group sessions can expire at any time.
pub async fn outgoing_requests(&self) -> Vec<OutgoingRequest>
[src]
encryption
only.Get the outgoing requests that need to be sent out.
This returns a list of OutGoingRequest
, those requests need to be sent
out to the server and the responses need to be passed back to the state
machine using mark_request_as_sent
.
pub async fn mark_request_as_sent<'a>(
&self,
request_id: &Uuid,
response: impl Into<IncomingResponse<'a>>
) -> Result<()>
[src]
&self,
request_id: &Uuid,
response: impl Into<IncomingResponse<'a>>
) -> Result<()>
encryption
only.Mark the request with the given request id as sent.
Arguments
-
request_id
- The unique id of the request that was sent out. This is needed to couple the response with the now sent out request. -
response
- The response that was received from the server after the outgoing request was sent out.
pub async fn get_missing_sessions(
&self,
users: &mut impl Iterator<Item = &UserId>
) -> Result<Option<(Uuid, KeysClaimRequest)>>
[src]
&self,
users: &mut impl Iterator<Item = &UserId>
) -> Result<Option<(Uuid, KeysClaimRequest)>>
encryption
only.Get a tuple of device and one-time keys that need to be uploaded.
Returns an empty error if no keys need to be uploaded.
pub async fn share_group_session(
&self,
room_id: &RoomId
) -> Result<Vec<Arc<ToDeviceRequest>>>
[src]
&self,
room_id: &RoomId
) -> Result<Vec<Arc<ToDeviceRequest>>>
encryption
only.Get a to-device request that will share a group session for a room.
pub async fn encrypt(
&self,
room_id: &RoomId,
content: impl Into<AnyMessageEventContent>
) -> Result<EncryptedEventContent>
[src]
&self,
room_id: &RoomId,
content: impl Into<AnyMessageEventContent>
) -> Result<EncryptedEventContent>
encryption
only.Encrypt a message event content.
pub async fn invalidate_group_session(&self, room_id: &RoomId) -> bool
[src]
encryption
only.Invalidate the currently active outbound group session for the given room.
Returns true if a session was invalidated, false if there was no session to invalidate.
pub async fn get_verification(&self, flow_id: &str) -> Option<Sas>
[src]
encryption
only.Get a Sas
verification object with the given flow id.
Arguments
flow_id
- The unique id that identifies a interactive verification flow. For in-room verifications this will be the event id of the m.key.verification.request event that started the flow, for the to-device verification flows this will be the transaction id of the m.key.verification.start event.
pub async fn get_device(
&self,
user_id: &UserId,
device_id: &DeviceId
) -> StdResult<Option<Device>, CryptoStoreError>
[src]
&self,
user_id: &UserId,
device_id: &DeviceId
) -> StdResult<Option<Device>, CryptoStoreError>
encryption
only.Get a specific device of a user.
Arguments
-
user_id
- The unique id of the user that the device belongs to. -
device_id
- The unique id of the device.
Returns a Device
if one is found and the crypto store didn't throw an
error.
This will always return None if the client hasn't been logged in.
Example
let device = client.get_device(&alice, "DEVICEID".into()).await; println!("{:?}", device);
pub async fn get_session(&self) -> Option<Session>
[src]
Get the user login session.
If the client is currently logged in, this will return a matrix_sdk::Session
object which
can later be given to restore_login
.
Returns a session object if the client is logged in. Otherwise returns None
.
pub async fn get_user_devices(
&self,
user_id: &UserId
) -> StdResult<UserDevices, CryptoStoreError>
[src]
&self,
user_id: &UserId
) -> StdResult<UserDevices, CryptoStoreError>
encryption
only.Get a map holding all the devices of an user.
This will always return an empty map if the client hasn't been logged in.
Arguments
user_id
- The unique id of the user that the devices belong to.
Panics
Panics if the client hasn't been logged in and the crypto layer thus hasn't been initialized.
Example
let devices = client.get_user_devices(&alice).await.unwrap(); for device in devices.devices() { println!("{:?}", device); }
pub async fn olm_machine(&self) -> Option<OlmMachine>
[src]
encryption
only.Get the olm machine.
Trait Implementations
impl Clone for BaseClient
[src]
pub fn clone(&self) -> BaseClient
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for BaseClient
[src]
Auto Trait Implementations
impl !RefUnwindSafe for BaseClient
[src]
impl Send for BaseClient
[src]
impl Sync for BaseClient
[src]
impl Unpin for BaseClient
[src]
impl !UnwindSafe for BaseClient
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> AsyncTraitDeps for T where
T: Send + Sync + Debug,
[src]
T: Send + Sync + Debug,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Conv for T
impl<T> Conv for T
impl<T> FmtForward for T
pub fn fmt_binary(self) -> FmtBinary<Self> where
Self: Binary,
Self: Binary,
pub fn fmt_display(self) -> FmtDisplay<Self> where
Self: Display,
Self: Display,
pub fn fmt_lower_exp(self) -> FmtLowerExp<Self> where
Self: LowerExp,
Self: LowerExp,
pub fn fmt_lower_hex(self) -> FmtLowerHex<Self> where
Self: LowerHex,
Self: LowerHex,
pub fn fmt_octal(self) -> FmtOctal<Self> where
Self: Octal,
Self: Octal,
pub fn fmt_pointer(self) -> FmtPointer<Self> where
Self: Pointer,
Self: Pointer,
pub fn fmt_upper_exp(self) -> FmtUpperExp<Self> where
Self: UpperExp,
Self: UpperExp,
pub fn fmt_upper_hex(self) -> FmtUpperHex<Self> where
Self: UpperHex,
Self: UpperHex,
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Pipe for T where
T: ?Sized,
T: ?Sized,
pub fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
pub fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R where
R: 'a,
R: 'a,
pub fn pipe_ref_mut<'a, R>(
&'a mut self,
func: impl FnOnce(&'a mut Self) -> R
) -> R where
R: 'a,
&'a mut self,
func: impl FnOnce(&'a mut Self) -> R
) -> R where
R: 'a,
pub fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R where
Self: Borrow<B>,
R: 'a,
B: 'a + ?Sized,
Self: Borrow<B>,
R: 'a,
B: 'a + ?Sized,
pub fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> R where
Self: BorrowMut<B>,
R: 'a,
B: 'a + ?Sized,
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> R where
Self: BorrowMut<B>,
R: 'a,
B: 'a + ?Sized,
pub fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R where
Self: AsRef<U>,
R: 'a,
U: 'a + ?Sized,
Self: AsRef<U>,
R: 'a,
U: 'a + ?Sized,
pub fn pipe_as_mut<'a, U, R>(
&'a mut self,
func: impl FnOnce(&'a mut U) -> R
) -> R where
Self: AsMut<U>,
R: 'a,
U: 'a + ?Sized,
&'a mut self,
func: impl FnOnce(&'a mut U) -> R
) -> R where
Self: AsMut<U>,
R: 'a,
U: 'a + ?Sized,
pub fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
Self: Deref<Target = T>,
R: 'a,
T: 'a + ?Sized,
Self: Deref<Target = T>,
R: 'a,
T: 'a + ?Sized,
pub fn pipe_deref_mut<'a, T, R>(
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: DerefMut<Target = T> + Deref,
R: 'a,
T: 'a + ?Sized,
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: DerefMut<Target = T> + Deref,
R: 'a,
T: 'a + ?Sized,
impl<T> Pipe for T
impl<T> PipeAsRef for T
pub fn pipe_as_ref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
Self: AsRef<T>,
R: 'a,
T: 'a,
Self: AsRef<T>,
R: 'a,
T: 'a,
pub fn pipe_as_mut<'a, T, R>(
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: AsMut<T>,
R: 'a,
T: 'a,
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: AsMut<T>,
R: 'a,
T: 'a,
impl<T> PipeBorrow for T
pub fn pipe_borrow<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R where
Self: Borrow<T>,
R: 'a,
T: 'a,
Self: Borrow<T>,
R: 'a,
T: 'a,
pub fn pipe_borrow_mut<'a, T, R>(
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: BorrowMut<T>,
R: 'a,
T: 'a,
&'a mut self,
func: impl FnOnce(&'a mut T) -> R
) -> R where
Self: BorrowMut<T>,
R: 'a,
T: 'a,
impl<T> PipeDeref for T
pub fn pipe_deref<'a, R>(
&'a self,
func: impl FnOnce(&'a Self::Target) -> R
) -> R where
Self: Deref,
R: 'a,
&'a self,
func: impl FnOnce(&'a Self::Target) -> R
) -> R where
Self: Deref,
R: 'a,
pub fn pipe_deref_mut<'a, R>(
&'a mut self,
func: impl FnOnce(&'a mut Self::Target) -> R
) -> R where
Self: DerefMut,
R: 'a,
&'a mut self,
func: impl FnOnce(&'a mut Self::Target) -> R
) -> R where
Self: DerefMut,
R: 'a,
impl<T> PipeRef for T
pub fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R where
R: 'a,
R: 'a,
pub fn pipe_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R where
R: 'a,
R: 'a,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> Tap for T
pub fn tap(self, func: impl FnOnce(&Self)) -> Self
pub fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self
pub fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self where
Self: Borrow<B>,
B: ?Sized,
Self: Borrow<B>,
B: ?Sized,
pub fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self where
Self: BorrowMut<B>,
B: ?Sized,
Self: BorrowMut<B>,
B: ?Sized,
pub fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self where
Self: AsRef<R>,
R: ?Sized,
Self: AsRef<R>,
R: ?Sized,
pub fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self where
Self: AsMut<R>,
R: ?Sized,
Self: AsMut<R>,
R: ?Sized,
pub fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self where
Self: Deref<Target = T>,
T: ?Sized,
Self: Deref<Target = T>,
T: ?Sized,
pub fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self where
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
pub fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
pub fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
pub fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self where
Self: Borrow<B>,
B: ?Sized,
Self: Borrow<B>,
B: ?Sized,
pub fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self where
Self: BorrowMut<B>,
B: ?Sized,
Self: BorrowMut<B>,
B: ?Sized,
pub fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self where
Self: AsRef<R>,
R: ?Sized,
Self: AsRef<R>,
R: ?Sized,
pub fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self where
Self: AsMut<R>,
R: ?Sized,
Self: AsMut<R>,
R: ?Sized,
pub fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self where
Self: Deref<Target = T>,
T: ?Sized,
Self: Deref<Target = T>,
T: ?Sized,
pub fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self where
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
impl<T> Tap for T
pub fn tap<F, R>(self, func: F) -> Self where
F: FnOnce(&Self) -> R,
F: FnOnce(&Self) -> R,
pub fn tap_dbg<F, R>(self, func: F) -> Self where
F: FnOnce(&Self) -> R,
F: FnOnce(&Self) -> R,
pub fn tap_mut<F, R>(self, func: F) -> Self where
F: FnOnce(&mut Self) -> R,
F: FnOnce(&mut Self) -> R,
pub fn tap_mut_dbg<F, R>(self, func: F) -> Self where
F: FnOnce(&mut Self) -> R,
F: FnOnce(&mut Self) -> R,
impl<T, U> TapAsRef<U> for T where
U: ?Sized,
U: ?Sized,
pub fn tap_ref<F, R>(self, func: F) -> Self where
Self: AsRef<T>,
F: FnOnce(&T) -> R,
Self: AsRef<T>,
F: FnOnce(&T) -> R,
pub fn tap_ref_dbg<F, R>(self, func: F) -> Self where
Self: AsRef<T>,
F: FnOnce(&T) -> R,
Self: AsRef<T>,
F: FnOnce(&T) -> R,
pub fn tap_ref_mut<F, R>(self, func: F) -> Self where
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
pub fn tap_ref_mut_dbg<F, R>(self, func: F) -> Self where
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
Self: AsMut<T>,
F: FnOnce(&mut T) -> R,
impl<T, U> TapBorrow<U> for T where
U: ?Sized,
U: ?Sized,
pub fn tap_borrow<F, R>(self, func: F) -> Self where
Self: Borrow<T>,
F: FnOnce(&T) -> R,
Self: Borrow<T>,
F: FnOnce(&T) -> R,
pub fn tap_borrow_dbg<F, R>(self, func: F) -> Self where
Self: Borrow<T>,
F: FnOnce(&T) -> R,
Self: Borrow<T>,
F: FnOnce(&T) -> R,
pub fn tap_borrow_mut<F, R>(self, func: F) -> Self where
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
pub fn tap_borrow_mut_dbg<F, R>(self, func: F) -> Self where
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
Self: BorrowMut<T>,
F: FnOnce(&mut T) -> R,
impl<T> TapDeref for T
pub fn tap_deref<F, R>(self, func: F) -> Self where
Self: Deref,
F: FnOnce(&Self::Target) -> R,
Self: Deref,
F: FnOnce(&Self::Target) -> R,
pub fn tap_deref_dbg<F, R>(self, func: F) -> Self where
Self: Deref,
F: FnOnce(&Self::Target) -> R,
Self: Deref,
F: FnOnce(&Self::Target) -> R,
pub fn tap_deref_mut<F, R>(self, func: F) -> Self where
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
pub fn tap_deref_mut_dbg<F, R>(self, func: F) -> Self where
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
Self: DerefMut,
F: FnOnce(&mut Self::Target) -> R,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T> TryConv for T
impl<T> TryConv for T
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,