Struct ruma_client_api::r0::push::PushRule[][src]

#[non_exhaustive]
pub struct PushRule { pub actions: Vec<Action>, pub default: bool, pub enabled: bool, pub rule_id: String, pub conditions: Option<Vec<PushCondition>>, pub pattern: Option<String>, }
Expand description

Like SimplePushRule, but may represent any kind of push rule thanks to pattern and conditions being optional.

To create an instance of this type, use one of its From implementations.

Fields (Non-exhaustive)

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct {{ .. }} syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
actions: Vec<Action>

The actions to perform when this rule is matched.

default: bool

Whether this is a default rule, or has been set explicitly.

enabled: bool

Whether the push rule is enabled or not.

rule_id: String

The ID of this rule.

conditions: Option<Vec<PushCondition>>

The conditions that must hold true for an event in order for a rule to be applied to an event. A rule with no conditions always matches.

Only applicable to underride and override rules.

pattern: Option<String>

The glob-style pattern to match against. Only applicable to content rules.

Trait Implementations

impl Clone for PushRule[src]

fn clone(&self) -> PushRule[src]

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Debug for PushRule[src]

fn fmt(&self, f: &mut Formatter<'_>) -> Result[src]

Formats the value using the given formatter. Read more

impl<'de> Deserialize<'de> for PushRule[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

impl From<ConditionalPushRule> for PushRule[src]

fn from(push_rule: ConditionalPushRule) -> Self[src]

Performs the conversion.

impl From<ConditionalPushRuleInit> for PushRule[src]

fn from(init: ConditionalPushRuleInit) -> Self[src]

Performs the conversion.

impl From<PatternedPushRule> for PushRule[src]

fn from(push_rule: PatternedPushRule) -> Self[src]

Performs the conversion.

impl From<PatternedPushRuleInit> for PushRule[src]

fn from(init: PatternedPushRuleInit) -> Self[src]

Performs the conversion.

impl From<SimplePushRule> for PushRule[src]

fn from(push_rule: SimplePushRule) -> Self[src]

Performs the conversion.

impl From<SimplePushRuleInit> for PushRule[src]

fn from(init: SimplePushRuleInit) -> Self[src]

Performs the conversion.

impl Serialize for PushRule[src]

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
    __S: Serializer
[src]

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T> Instrument for T[src]

fn instrument(self, span: Span) -> Instrumented<Self>[src]

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

fn in_current_span(self) -> Instrumented<Self>[src]

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

pub fn to_owned(&self) -> T[src]

Creates owned data from borrowed data, usually by cloning. Read more

pub fn clone_into(&self, target: &mut T)[src]

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

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]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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]

Performs the conversion.

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]