< Summary

Information
Class: MusicTheory.Theory.Interval.SemitoneInterval
Assembly: MusicTheory
File(s): /home/runner/work/MusicTheory/MusicTheory/Theory/Interval/SemitoneInterval.cs
Line coverage
25%
Covered lines: 1
Uncovered lines: 3
Coverable lines: 4
Total lines: 12
Line coverage: 25%
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

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
get_Semitones()100%11100%
op_Implicit(...)100%210%
op_Implicit(...)100%210%
ToString()100%210%

File(s)

/home/runner/work/MusicTheory/MusicTheory/Theory/Interval/SemitoneInterval.cs

#LineLine coverage
 1namespace MusicTheory.Theory.Interval;
 2
 3/// <summary>
 4/// 純粋な半音数のみを保持する軽量インターバル。
 5/// 機能的属性 (TensionFunction など) を持たない。
 6/// </summary>
 47public readonly record struct SemitoneInterval(int Semitones)
 8{
 09    public static implicit operator SemitoneInterval(int semitones) => new(semitones);
 010    public static implicit operator int(SemitoneInterval si) => si.Semitones;
 011    public override string ToString() => $"{Semitones}st";
 12}