Class LrcDocument
- Namespace
- ModernLrc
- Assembly
- ModernLrc.dll
Root model: metadata block + sorted-by-timestamp lines. The parser and LrcDocumentBuilder maintain the sort guarantee; the type itself does not validate ordering on assignment.
public sealed record LrcDocument : IEquatable<LrcDocument>
- Inheritance
-
LrcDocument
- Implements
- Inherited Members
- Extension Methods
Remarks
Documents are immutable records — use with expressions or
LrcDocumentBuilder to derive new instances.
Use the helpers in LrcDocumentExtensions for playback
queries (FindLineAt, LinesInRange, GetEffectiveTime).
Properties
Empty
Singleton empty document.
public static LrcDocument Empty { get; }
Property Value
Lines
Lyric lines, sorted ascending by timestamp. Sort guarantee is supplied by the parser and by Build(); constructing a document directly bypasses that check.
public EquatableArray<LrcLine> Lines { get; init; }
Property Value
Metadata
Document metadata (default: Empty).
public LrcMetadata Metadata { get; init; }