< Summary

Information
Class: MusicTheory.Theory.Harmony.HarmonyRules
Assembly: MusicTheory
File(s): /home/runner/work/MusicTheory/MusicTheory/Theory/Harmony/HarmonyRules.cs
Line coverage
100%
Covered lines: 8
Uncovered lines: 0
Coverable lines: 8
Total lines: 31
Line coverage: 100%
Branch coverage
N/A
Covered branches: 0
Total branches: 0
Branch coverage: N/A
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

File(s)

/home/runner/work/MusicTheory/MusicTheory/Theory/Harmony/HarmonyRules.cs

#LineLine coverage
 1namespace MusicTheory.Theory.Harmony;
 2
 3// Lightweight global switches to tune harmony disambiguation without breaking existing APIs.
 4// Defaults are set to the current, test-validated behavior.
 5public static class HarmonyRules
 6{
 7    // These static properties remain for backward compatibility but forward to HarmonyOptions.Default.
 8    public static bool PreferAugmentedSixthOverMixtureWhenBassFlat6
 9    {
 110        get => HarmonyOptions.Default.PreferAugmentedSixthOverMixtureWhenBassFlat6;
 111        set => HarmonyOptions.Default.PreferAugmentedSixthOverMixtureWhenBassFlat6 = value;
 12    }
 13
 14    public static bool DisallowAugmentedSixthWhenSopranoFlat6
 15    {
 116        get => HarmonyOptions.Default.DisallowAugmentedSixthWhenSopranoFlat6;
 117        set => HarmonyOptions.Default.DisallowAugmentedSixthWhenSopranoFlat6 = value;
 18    }
 19
 20    public static bool PreferSecondaryLeadingToneTargetV
 21    {
 122        get => HarmonyOptions.Default.PreferSecondaryLeadingToneTargetV;
 123        set => HarmonyOptions.Default.PreferSecondaryLeadingToneTargetV = value;
 24    }
 25
 26    public static bool PreferDiatonicIiHalfDimInMinor
 27    {
 128        get => HarmonyOptions.Default.PreferDiatonicIiHalfDimInMinor;
 129        set => HarmonyOptions.Default.PreferDiatonicIiHalfDimInMinor = value;
 30    }
 31}