@tonalis/music-dsl
    Preparing search index...

    Interface ScaleDescriptor

    Everything the library needs to know about a scale.

    mask is the 12-bit pitch-class set repeated 3× (36 bits) — the triple copy lets the sliding-window scan rotate the scale to any mode/root.

    supportsDiatonicFunction drives the two-tier model: membership (contains) is defined for every scale, but functional queries (isDiatonic / harmonic function) are only meaningful where a tonal hierarchy exists. Symmetric/atonal scales set this false and those queries refuse (throw) rather than return an answer that looks authoritative but isn't.

    interface ScaleDescriptor {
        category: string;
        mask: bigint;
        name: string;
        supportsDiatonicFunction: boolean;
    }
    Index
    category: string
    mask: bigint
    name: string
    supportsDiatonicFunction: boolean