diff --git a/Sources/ManualDCore/EffectiveLengthGroup.swift b/Sources/ManualDCore/EffectiveLengthGroup.swift new file mode 100644 index 0000000..5e53553 --- /dev/null +++ b/Sources/ManualDCore/EffectiveLengthGroup.swift @@ -0,0 +1,30 @@ +import Foundation + +public struct EffectiveLengthGroup: Codable, Equatable { + public let group: Int + public let letter: String + public let effectiveLength: Int + public let category: Category + public var label: String { "\(group)\(letter.uppercased())" } + + public init( + group: Int, + letter: String, + effectiveLength: Int, + category: Category + ) { + self.group = group + self.letter = letter + self.effectiveLength = effectiveLength + self.category = category + } +} + +extension EffectiveLengthGroup { + + public enum Category: String, Codable, Equatable { + case supply + case `return` + } + +}