Expand description
§iReal Parser
ireal_parser is a library that provides functionality to parse iReal Pro
URLs and chord progressions according to the iReal Pro
specification.
§Features
- Parse iReal Pro URLs into a
Songstruct with fields like title, composer, style, and key signature. - Parse iReal Pro progressions into a
Progressionstruct containingProgressionElements. - Convert
Song,Progression, andProgressionElementstructs back to iReal Pro URL and progression string formats.
§Usage
Add ireal_parser as a dependency in your Cargo.toml, then use the
parsing functions provided by the crate:
use ireal_parser::parse_irealbook_url;
// Parse an iReal Pro URL into a `Song` struct
let song = parse_irealbook_url("irealbook://Song Title=LastName FirstName=Style=Ab=n=T44*A{C^7 |A-7 |D-9 |G7#5 }").unwrap();For more information, refer to the iReal Pro specification.
Structs§
- Chord
- Represents an iReal Pro chord
- Progression
- Represents a chord progression as a sequence of
ProgressionElements. - Song
- Represents a song with an iReal Pro progression.
- Staff
Text - Represents some staff text
Enums§
- Chord
Quality - Represents an iReal Pro chord quality
- Error
- Represents errors that can occur while parsing iReal Pro URLs and progressions.
- Note
- Represents an iReal Pro note
- Progression
Element - Represents a single element of a chord progression.
- Staff
Text Kind - Represents a staff text
- Time
Signature - Represents the time signatures
Functions§
- parse_
irealbook_ progression - Parses an iReal Pro progression string and returns a
Progression. - parse_
irealbook_ url - Parses an iReal Pro URL and returns a
Song.