Trait matrix_appservice_rs::Mappable [−][src]
pub trait Mappable { type MatrixReference: ?Sized + Eq + Hash + ToOwned<Owned = Self::MatrixType>; type MatrixType: Eq + Hash + Borrow<Self::MatrixReference>; type ExternalReference: ?Sized + Eq + Hash + ToOwned<Owned = Self::ExternalType>; type ExternalType: Eq + Hash + Borrow<Self::ExternalReference>; fn as_matrix(&self) -> &Self::MatrixReference; fn into_matrix(self) -> Self::MatrixType; fn as_external(&self) -> &Self::ExternalReference; fn into_external(self) -> Self::ExternalType; fn into_split(self) -> (Self::MatrixType, Self::ExternalType); }
Expand description
Represents an object that has both a Matrix ID and an external ID.
Associated Types
type MatrixReference: ?Sized + Eq + Hash + ToOwned<Owned = Self::MatrixType>
[src]
type MatrixReference: ?Sized + Eq + Hash + ToOwned<Owned = Self::MatrixType>
[src]type MatrixType: Eq + Hash + Borrow<Self::MatrixReference>
[src]
type MatrixType: Eq + Hash + Borrow<Self::MatrixReference>
[src]type ExternalReference: ?Sized + Eq + Hash + ToOwned<Owned = Self::ExternalType>
[src]
type ExternalReference: ?Sized + Eq + Hash + ToOwned<Owned = Self::ExternalType>
[src]type ExternalType: Eq + Hash + Borrow<Self::ExternalReference>
[src]
type ExternalType: Eq + Hash + Borrow<Self::ExternalReference>
[src]Required methods
fn as_matrix(&self) -> &Self::MatrixReference
[src]
fn as_matrix(&self) -> &Self::MatrixReference
[src]Get a reference to the Matrix ID of this object.
fn into_matrix(self) -> Self::MatrixType
[src]
fn into_matrix(self) -> Self::MatrixType
[src]Convert this object into an owned Matrix ID of this object.
fn as_external(&self) -> &Self::ExternalReference
[src]
fn as_external(&self) -> &Self::ExternalReference
[src]Get a reference to the external ID of this object.
fn into_external(self) -> Self::ExternalType
[src]
fn into_external(self) -> Self::ExternalType
[src]Convert this object into an owned external ID of this object.
fn into_split(self) -> (Self::MatrixType, Self::ExternalType)
[src]
fn into_split(self) -> (Self::MatrixType, Self::ExternalType)
[src]Split this object into owned matrix type and external type.