parse static method
Parses a string into a verse range reference.
Supported formats:
- Same chapter: "Book Chapter:VerseStart-VerseEnd" (e.g., "John 3:16-17")
- Cross-chapter: "Book ChapterStart:VerseStart-ChapterEnd:VerseEnd" (e.g., "John 3:16-4:1")
- Cross-book: "BookStart Chapter:Verse-BookEnd Chapter:Verse" (e.g., "John 3:16-Acts 1:2")
- Dot separators: "Book Chapter.VerseStart-VerseEnd" (e.g., "John 3.16-17")
- Various dash types: hyphens (-), en dashes (–), em dashes (—)
Parameters:
ref: The verse range string to parselanguage: Optional language for book name parsing
Returns: A parsed VerseRangeRef instance
Throws: ParseVerseRefError if parsing fails or range is invalid
Example:
final sameChapter = VerseRangeRef.parse("John 3:16-17");
final crossChapter = VerseRangeRef.parse("John 3:16-4:1");
final crossBook = VerseRangeRef.parse("John 3:16-Acts 1:2");
Implementation
static VerseRangeRef parse(String ref, {BibleLanguageEnum? language}) {
return _standardReferenceParser.parseRange(ref, language: language);
}