Trait StatStream

Source
pub trait StatStream {
    type Qualifier: QualifierFlag;

    // Provided methods
    fn stream_stat(
        &self,
        entity: Entity,
        qualifier: &QualifierQuery<Self::Qualifier>,
        stat_value: &mut StatValuePair,
        querier: Querier<'_, Self::Qualifier>,
    ) { ... }
    fn stream_relation(
        &self,
        other: &Self,
        entity: Entity,
        target: Entity,
        qualifier: &QualifierQuery<Self::Qualifier>,
        stat_value: &mut StatValuePair,
        querier: Querier<'_, Self::Qualifier>,
    ) { ... }
    fn has_attribute(&self, entity: Entity, attribute: Attribute<'_>) -> bool { ... }
}
Expand description

An isolated item that provides stat modifiers to a stat query.

Required Associated Types§

Provided Methods§

Source

fn stream_stat( &self, entity: Entity, qualifier: &QualifierQuery<Self::Qualifier>, stat_value: &mut StatValuePair, querier: Querier<'_, Self::Qualifier>, )

Source

fn stream_relation( &self, other: &Self, entity: Entity, target: Entity, qualifier: &QualifierQuery<Self::Qualifier>, stat_value: &mut StatValuePair, querier: Querier<'_, Self::Qualifier>, )

Source

fn has_attribute(&self, entity: Entity, attribute: Attribute<'_>) -> bool

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<A, B> StatStream for (A, B)
where A: StatStream, B: StatStream<Qualifier = A::Qualifier>,

Source§

type Qualifier = <A as StatStream>::Qualifier

Source§

fn stream_stat( &self, entity: Entity, qualifier: &QualifierQuery<Self::Qualifier>, stat_value: &mut StatValuePair, querier: Querier<'_, Self::Qualifier>, )

Source§

fn stream_relation( &self, other: &Self, entity: Entity, target: Entity, qualifier: &QualifierQuery<Self::Qualifier>, stat_value: &mut StatValuePair, querier: Querier<'_, Self::Qualifier>, )

Source§

fn has_attribute(&self, entity: Entity, attribute: Attribute<'_>) -> bool

Source§

impl<T> StatStream for &T
where T: StatStream,

Source§

type Qualifier = <T as StatStream>::Qualifier

Source§

fn stream_stat( &self, entity: Entity, qualifier: &QualifierQuery<Self::Qualifier>, stat_value: &mut StatValuePair, querier: Querier<'_, Self::Qualifier>, )

Source§

fn stream_relation( &self, other: &Self, entity: Entity, target: Entity, qualifier: &QualifierQuery<Self::Qualifier>, stat_value: &mut StatValuePair, querier: Querier<'_, Self::Qualifier>, )

Source§

fn has_attribute(&self, entity: Entity, attribute: Attribute<'_>) -> bool

Implementors§