Trait frunk::monoid::Monoid[][src]

pub trait Monoid: Semigroup {
    fn empty() -> Self;
}

A Monoid is a Semigroup that has an empty/ zero value

Required Methods

For a given Monoid, returns its empty/zero value

Examples

use frunk::Monoid;

assert_eq!(<i16 as Monoid>::empty(), 0);Run

Implementations on Foreign Types

impl<T> Monoid for Option<T> where
    T: Semigroup + Clone
[src]

impl Monoid for String
[src]

impl<T> Monoid for Vec<T> where
    T: Clone
[src]

impl<T> Monoid for HashSet<T> where
    T: Hash + Eq + Clone
[src]

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

impl Monoid for i8
[src]

impl Monoid for i16
[src]

impl Monoid for i32
[src]

impl Monoid for i64
[src]

impl Monoid for u8
[src]

impl Monoid for u16
[src]

impl Monoid for u32
[src]

impl Monoid for u64
[src]

impl Monoid for isize
[src]

impl Monoid for usize
[src]

impl Monoid for f32
[src]

impl Monoid for f64
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid, G: Monoid, H: Monoid, I: Monoid, J: Monoid, K: Monoid, L: Monoid, M: Monoid, N: Monoid, O: Monoid, P: Monoid, Q: Monoid, R: Monoid, S: Monoid, T: Monoid, U: Monoid> Monoid for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid, G: Monoid, H: Monoid, I: Monoid, J: Monoid, K: Monoid, L: Monoid, M: Monoid, N: Monoid, O: Monoid, P: Monoid, Q: Monoid, R: Monoid, S: Monoid, T: Monoid> Monoid for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid, G: Monoid, H: Monoid, I: Monoid, J: Monoid, K: Monoid, L: Monoid, M: Monoid, N: Monoid, O: Monoid, P: Monoid, Q: Monoid, R: Monoid, S: Monoid> Monoid for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid, G: Monoid, H: Monoid, I: Monoid, J: Monoid, K: Monoid, L: Monoid, M: Monoid, N: Monoid, O: Monoid, P: Monoid, Q: Monoid, R: Monoid> Monoid for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid, G: Monoid, H: Monoid, I: Monoid, J: Monoid, K: Monoid, L: Monoid, M: Monoid, N: Monoid, O: Monoid, P: Monoid, Q: Monoid> Monoid for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid, G: Monoid, H: Monoid, I: Monoid, J: Monoid, K: Monoid, L: Monoid, M: Monoid, N: Monoid, O: Monoid, P: Monoid> Monoid for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid, G: Monoid, H: Monoid, I: Monoid, J: Monoid, K: Monoid, L: Monoid, M: Monoid, N: Monoid, O: Monoid> Monoid for (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid, G: Monoid, H: Monoid, I: Monoid, J: Monoid, K: Monoid, L: Monoid, M: Monoid, N: Monoid> Monoid for (A, B, C, D, E, F, G, H, I, J, K, L, M, N)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid, G: Monoid, H: Monoid, I: Monoid, J: Monoid, K: Monoid, L: Monoid, M: Monoid> Monoid for (A, B, C, D, E, F, G, H, I, J, K, L, M)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid, G: Monoid, H: Monoid, I: Monoid, J: Monoid, K: Monoid, L: Monoid> Monoid for (A, B, C, D, E, F, G, H, I, J, K, L)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid, G: Monoid, H: Monoid, I: Monoid, J: Monoid, K: Monoid> Monoid for (A, B, C, D, E, F, G, H, I, J, K)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid, G: Monoid, H: Monoid, I: Monoid, J: Monoid> Monoid for (A, B, C, D, E, F, G, H, I, J)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid, G: Monoid, H: Monoid, I: Monoid> Monoid for (A, B, C, D, E, F, G, H, I)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid, G: Monoid, H: Monoid> Monoid for (A, B, C, D, E, F, G, H)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid, G: Monoid> Monoid for (A, B, C, D, E, F, G)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid, F: Monoid> Monoid for (A, B, C, D, E, F)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid, E: Monoid> Monoid for (A, B, C, D, E)
[src]

impl<A: Monoid, B: Monoid, C: Monoid, D: Monoid> Monoid for (A, B, C, D)
[src]

impl<A: Monoid, B: Monoid, C: Monoid> Monoid for (A, B, C)
[src]

impl<A: Monoid, B: Monoid> Monoid for (A, B)
[src]

impl<A: Monoid> Monoid for (A,)
[src]

Implementors