[][src]Struct nature_db::Relation

pub struct Relation {
    pub from: String,
    pub to: Meta,
    pub selector: Option<FlowSelector>,
    pub executor: Executor,
    pub use_upstream_id: bool,
    pub target_states: Option<TargetState>,
    pub delay: i32,
}

the compose of Mapping::from, Mapping::to and Weight::label must be unique

Fields

from: Stringto: Metaselector: Option<FlowSelector>executor: Executoruse_upstream_id: booltarget_states: Option<TargetState>delay: i32

Methods

impl Relation[src]

pub fn from_raw(
    val: RawRelation,
    meta_cache_getter: MetaCacheGetter,
    meta_getter: MetaGetter
) -> Result<Vec<Relation>>
[src]

pub fn weight_filter(
    relations: &[Relation],
    balances: &HashMap<Executor, Range<f32>>
) -> Vec<Relation>
[src]

pub fn weight_calculate(
    groups: &HashMap<String, Vec<Relation>>
) -> HashMap<Executor, Range<f32>>
[src]

weight group will be cached

pub fn get_label_groups(maps: &[Relation]) -> HashMap<String, Vec<Relation>>[src]

group by labels. Only one flow will be used when there are same label. This can be used to switch two different flows smoothly.

Trait Implementations

impl Clone for Relation[src]

impl Debug for Relation[src]

impl Default for Relation[src]

impl<'de> Deserialize<'de> for Relation[src]

impl Iterator for Relation[src]

type Item = Relation

The type of the elements being iterated over.

impl PartialEq<Relation> for Relation[src]

impl Serialize for Relation[src]

impl StructuralPartialEq for Relation[src]

Auto Trait Implementations

Blanket Implementations

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

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

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

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

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

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

impl<I> IntoIterator for I where
    I: Iterator
[src]

type Item = <I as Iterator>::Item

The type of the elements being iterated over.

type IntoIter = I

Which kind of iterator are we turning this into?

impl<T> IntoSql for T[src]

impl<I> IteratorRandom for I where
    I: Iterator
[src]

impl<I> IteratorRandom for I where
    I: Iterator
[src]

impl<T> Itertools for T where
    T: Iterator + ?Sized
[src]

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

type Owned = T

The resulting type after obtaining ownership.

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.

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.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,