public extension PureYAML.Model { /// A 1-based line/column position in the source text. Carried by ``LocatedValue`` so a /// consumer (an editor, a linter, a CI report) can point at exactly where a value-tree /// node was written. Positions live on the parallel located tree, never on ``Value``, /// so the plain value tree and its equality stay free of source coordinates. struct SourcePosition: Equatable, Hashable, Sendable, Comparable { public var line: Int public var column: Int public init(line: Int, column: Int) { self.line = line self.column = column } public static func < (lhs: Self, rhs: Self) -> Bool { (lhs.line, lhs.column) < (rhs.line, rhs.column) } } }