Trait enso_flexer::prelude::semigroup::PartialSemigroup[][src]

pub trait PartialSemigroup<T>: Clone {
    fn concat_mut(&mut self, other: T);

    fn concat_ref(&self, other: T) -> Self
    where
        Self: Clone
, { ... }
fn concat(self, other: T) -> Self { ... } }
Expand description

Mutable Semigroup definition. Impls should satisfy the associativity law: x.concat(y.concat(z)) = x.concat(y).concat(z), in symbolic form: x <> (y <> z) = (x <> y) <> z

Required methods

fn concat_mut(&mut self, other: T)[src]

Expand description

An associative operation.

Loading content...

Provided methods

fn concat_ref(&self, other: T) -> Self where
    Self: Clone
[src]

Expand description

An associative operation.

fn concat(self, other: T) -> Self[src]

Expand description

An associative operation.

Loading content...

Implementations on Foreign Types

impl<'_, T> PartialSemigroup<&'_ Vec<T, Global>> for Vec<T, Global> where
    T: Clone
[src]

pub fn concat_mut(&mut self, other: &Vec<T, Global>)[src]

impl<'_, T> PartialSemigroup<&'_ Option<T>> for Option<T> where
    T: Semigroup
[src]

pub fn concat_mut(&mut self, other: &Option<T>)[src]

impl<T> PartialSemigroup<Option<T>> for Option<T> where
    T: Semigroup
[src]

pub fn concat_mut(&mut self, other: Option<T>)[src]

impl<T> PartialSemigroup<Vec<T, Global>> for Vec<T, Global> where
    T: Clone
[src]

pub fn concat_mut(&mut self, other: Vec<T, Global>)[src]

Loading content...

Implementors

impl<'_, K, V, S> PartialSemigroup<&'_ HashMap<K, V, S>> for HashMap<K, V, S> where
    S: Clone + BuildHasher,
    K: Eq + Hash + Clone,
    V: Semigroup
[src]

pub fn concat_mut(&mut self, other: &HashMap<K, V, S>)[src]

impl<K, V, S> PartialSemigroup<HashMap<K, V, S>> for HashMap<K, V, S> where
    S: Clone + BuildHasher,
    K: Eq + Hash + Clone,
    V: Semigroup
[src]

pub fn concat_mut(&mut self, other: HashMap<K, V, S>)[src]

Loading content...