Skip to main content

FiniteSet

Trait FiniteSet 

Source
pub trait FiniteSet<const N: usize>: Copy + Sized {
    const ALL: [Self; N];
    const LEN: usize = N;

    // Provided methods
    fn iter() -> impl Iterator<Item = Self> { ... }
    fn iter_rev() -> impl Iterator<Item = Self> { ... }
}
Expand description

Finite set, containing all its values.

Required Associated Constants§

Source

const ALL: [Self; N]

Provided Associated Constants§

Source

const LEN: usize = N

Provided Methods§

Source

fn iter() -> impl Iterator<Item = Self>

Source

fn iter_rev() -> impl Iterator<Item = Self>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl FiniteSet<{ $crate::finite_set!(@count $($variant),+) }> for EnPassant

Source§

const ALL: [Self; 16]

Source§

impl FiniteSet<{ $crate::finite_set!(@count $($variant),+) }> for File

Source§

const ALL: [Self; 8]

Source§

impl FiniteSet<{ $crate::finite_set!(@count $($variant),+) }> for Player

Source§

const ALL: [Self; 2]

Source§

impl FiniteSet<{ $crate::finite_set!(@count $($variant),+) }> for Rank

Source§

const ALL: [Self; 8]

Source§

impl FiniteSet<{ $crate::finite_set!(@count $($variant),+) }> for Role

Source§

const ALL: [Self; 6]

Source§

impl FiniteSet<{ $crate::finite_set!(@count $($variant),+) }> for Side

Source§

const ALL: [Self; 2]

Source§

impl FiniteSet<{ $crate::finite_set!(@count $($variant),+) }> for Square

Source§

const ALL: [Self; 64]