Skip to main content

music_basic_usage/
basic_usage.rs

1use use_music::{BeatsPerMinute, ChordSymbol, NoteName, TimeSignature};
2
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4    let note = NoteName::new("C#4")?;
5    let chord = ChordSymbol::new("Cmaj7")?;
6    let meter = TimeSignature::new(4, 4)?;
7    let tempo = BeatsPerMinute::new(120.0)?;
8
9    assert_eq!(note.as_str(), "C#4");
10    assert_eq!(chord.as_str(), "Cmaj7");
11    assert!(meter.is_common_time_like());
12    assert_eq!(tempo.value(), 120.0);
13    Ok(())
14}