Struct ruma_common::thirdparty::Protocol [−][src]
pub struct Protocol { pub user_fields: Vec<String>, pub location_fields: Vec<String>, pub icon: String, pub field_types: BTreeMap<String, FieldType>, pub instances: Vec<ProtocolInstance>, }
Expand description
Metadata about a third party protocol.
To create an instance of this type, first create a ProtocolInit
and convert it via
Protocol::from
/ .into()
.
Fields
user_fields: Vec<String>
Fields which may be used to identify a third party user.
location_fields: Vec<String>
Fields which may be used to identify a third party location.
icon: String
A content URI representing an icon for the third party protocol.
If you activate the compat
feature, this field being absent in JSON will give you an
empty string here.
field_types: BTreeMap<String, FieldType>
The type definitions for the fields defined in user_fields
and location_fields
.
instances: Vec<ProtocolInstance>
A list of objects representing independent instances of configuration.
Trait Implementations
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]Deserialize this value from the given Serde deserializer. Read more
Performs the conversion.
Auto Trait Implementations
impl RefUnwindSafe for Protocol
impl UnwindSafe for Protocol
Blanket Implementations
Mutably borrows from an owned value. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more