Struct persichetti::serialism::ToneRow[][src]

pub struct ToneRow<const D: usize> { /* fields omitted */ }

Implementations

impl<const D: usize> ToneRow<D>[src]

pub fn new(p0: [usize; D]) -> Result<ToneRow<D>, ToneRowError>[src]

pub fn p(&self, index: usize) -> [usize; D][src]

Retrieve a prime row. If you need the retrograde, call rev on it.

Panics

Panics if the index is out of bounds.

pub fn prime(&self, index: usize, conversion: Convert) -> [Note; D][src]

Retrieve a prime row. Prime rows are numbered by the number of half steps above P0 that they are. For example, P4 is 4 half-steps higher than P0. If you need a Retrograde of a prime row, use rev in combination with this function. Retrogrades have the same number as their associated prime, i.e., Rn is the retrograde of Pn.

Panics

Panics if the index is out of bounds

pub fn i(&self, index: usize) -> [usize; D][src]

Retrieve a prime row as a numeric array. If you need the retrograde, call rev on it.

Panics

Panics if the index is out of bounds.

pub fn inversion(&self, index: usize, conversion: Convert) -> [Note; D][src]

Retrieve an inversion. Inversions are numbered by the number of half steps above I0 that they are. For example, I4 is 4 half-steps higher than I0. If you need a Retrograde of a prime row, use rev in combination with this function. Retrogrades have the same number as their associated prime, i.e., Rn is the retrograde of Pn.

Panics

Panics if the index is out of bounds

Trait Implementations

impl<const D: usize> Clone for ToneRow<D>[src]

impl<const D: usize> Debug for ToneRow<D>[src]

impl<const D: usize> Eq for ToneRow<D>[src]

impl<const D: usize> PartialEq<ToneRow<D>> for ToneRow<D>[src]

impl<const D: usize> StructuralEq for ToneRow<D>[src]

impl<const D: usize> StructuralPartialEq for ToneRow<D>[src]

Auto Trait Implementations

impl<const D: usize> RefUnwindSafe for ToneRow<D>

impl<const D: usize> Send for ToneRow<D>

impl<const D: usize> Sync for ToneRow<D>

impl<const D: usize> Unpin for ToneRow<D>

impl<const D: usize> UnwindSafe for ToneRow<D>

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> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[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.