Resolve any chord-shaped value to plain Chord data.
The counterpart of toSpelledInterval for chords: an entry point takes
whatever form the caller has — the symbol a chart holds, the data the chord
module returns, or a Chord instance — and gets one shape back. An instance
is accepted through its toJSON method rather than by its type, so the
layers below the model can read a class without importing it.
Resolve any chord-shaped value to plain Chord data.
The counterpart of toSpelledInterval for chords: an entry point takes whatever form the caller has — the symbol a chart holds, the data the chord module returns, or a
Chordinstance — and gets one shape back. An instance is accepted through itstoJSONmethod rather than by its type, so the layers below the model can read a class without importing it.