Letter-Sequence is a crate that gives you the ability to create sequences more complex then simple ordinal digits.
+=
and -=
An uppercase sequence, unbounded by rendering output ```rust use letter_sequence::SequenceBuilder; use std::convert::TryFrom;
let mut seq = SequenceBuilder::tryfrom("A") .unwrap() .upper() .build() .unwrap(); let elem = seq.next().unwrap(); asserteq!( elem.tostring(), "A" ); let elem = seq.next().unwrap(); asserteq!( elem.tostring(), "B" ); seq.set(25).unwrap(); let elem = seq.next().unwrap(); asserteq!( elem.tostring(), "Z" ); let elem = seq.nth(3).unwrap(); asserteq!( elem.tostring(), "AD" ); let elem = seq.next().unwrap(); asserteq!( elem.to_string(), "AE" ); ```
This time with .max_render_capacity()
set, and .lower()
cased
```rust
use letter_sequence::SequenceBuilder;
use std::convert::TryFrom;
let mut seq = SequenceBuilder::tryfrom("y") .unwrap() .lower() .maxrendercapacity(1) .build() .unwrap(); let elem = seq.next().unwrap(); asserteq!( elem.tostring(), "y" ); let elem = seq.next().unwrap(); asserteq!( elem.tostring(), "z" ); let elem = seq.next(); asserteq!( elem, None ); ```
Also supports bounded and unbounded numeric sequences ```rust use letter_sequence::SequenceBuilder; use std::convert::From;
let mut seq = SequenceBuilder::from(99) .numeric() .maxrendercapacity(3) .build() .unwrap(); let elem = seq.next().unwrap(); asserteq!( elem.tostring(), "99" ); let elem = seq.next().unwrap(); asserteq!( elem.tostring(), "100" ); ```