Expand description
Score and notation model for the SIM music libraries.
This crate is the notation codec surface: it converts between a
sim_lib_music_core::Score (and related music objects such as melodies,
progressions, and counterpoint) and bounded LilyPond or MusicXML notation.
MusicXML remains a fail-closed profile with explicit resource limits and
identity/loss sidecars; it is not a second score model or a general XML
codec. NotationCodec is the Rust entry point, while
install_music_notation_lib registers the Shape-described
music/notation/import runtime callable.
Structs§
- Music
Notation Lib - Host-registered notation profile exporting browse metadata and the
Shape-described
music/notation/importcallable. - Music
XmlLimits - Resource limits applied before and during MusicXML profile import.
- Notation
Codec - Codec converting between a
Scoreand its LilyPond-subset text rendering. - Notation
Identity - Stable MusicXML identity associated with a canonical structural path.
- Notation
Loss - One explicit piece of notation information outside canonical
Score. - Notation
Report - Result of a notation operation paired with any diagnostics produced.
Enums§
- Notation
Error - Error raised while importing or exporting LilyPond-subset notation.
- Notation
Identity Kind - Kind of stable MusicXML identity retained by an exchange report.
- Notation
Loss Kind - Machine-readable kind of information not carried by canonical
Score.
Statics§
- RECIPES
- Cookbook recipes for this lib, embedded at build time.
Functions§
- export_
counterpoint_ lilypond - Renders counterpoint as parallel LilyPond voices, spelling pitches in
key. - export_
lilypond - Renders a score as a LilyPond
\scoreblock, discarding diagnostics. - export_
lilypond_ report - Renders a score as a LilyPond
\scoreblock, returning the text with diagnostics. - export_
melody_ lilypond - Renders a melody as a LilyPond note sequence, spelling pitches in
key. - export_
musicxml_ partwise - Exports with deterministic profile identifiers and discards sidecar evidence.
- export_
musicxml_ partwise_ report - Exports canonical
Scorethrough the bounded MusicXML partwise profile. - export_
progression_ lilypond - Renders a chord progression as a LilyPond chord sequence, spelling pitches in
key. - import_
lilypond - Parses LilyPond-subset text into a score, discarding diagnostics.
- import_
lilypond_ report - Parses LilyPond-subset text into a score, returning it with diagnostics.
- import_
musicxml_ partwise - Imports the bounded profile and discards exchange sidecar evidence.
- import_
musicxml_ partwise_ report - Imports the bounded MusicXML partwise profile with explicit resource limits.
- install_
music_ notation_ lib - Installs music shapes and the notation profile into
cx. - notation_
import_ symbol - Symbol of the one notation import callable.