Expand description
Idiomatic Rust representations of commonly used primitives for Change Ringing compositions.
Re-exports§
pub use block::Block;
pub use call::Call;
pub use mask::Mask;
pub use method::Method;
pub use method_lib::MethodLib;
pub use music::MusicType;
pub use place_not::PlaceNot;
pub use place_not::PnBlock;
pub use row::same_stage_vec::SameStageVec;
pub use row::InvalidRowError;
pub use row::Row;
pub use row::RowBuf;
Modules§
- Module for parsing and handling place notation
Structs§
- A type-safe representation of a ‘bell’, which adds things like conversions to and from commonly-used bell names. Each
Bell
takes a single byte in memory. - An error created when a
Row
was used to permute something with the wrong length
Enums§
- Data type representing the parity of a
Row
. To generate these, you probably want to useRow::parity
. Note thatRow::parity
always performs a heap allocation and is linear-time in theStage
of theRow
. If you are usingParity
s as optimisations within hot code I would recommend computing them upfront on your inputRow
s and then tracking them by hand, probably using the*
operator. - Stroke of a row, i.e. handstroke (
Stroke::Hand
) or backstroke (Stroke::Back
). - A set of at least one
Stroke
- Whether
Row
s are repeated in some section of ringing.
Functions§
- Helper function to calculate the length of the longest run off the start of a given
Iterator