Fix issue where parser return bad sub parsers if you reach end of text
This commit is contained in:
@@ -71,6 +71,9 @@ extension HBParser {
|
|||||||
|
|
||||||
/// initialise a parser that parses a section of the buffer attached to this parser
|
/// initialise a parser that parses a section of the buffer attached to this parser
|
||||||
func subParser(_ range: Range<Int>) -> HBParser {
|
func subParser(_ range: Range<Int>) -> HBParser {
|
||||||
|
if range.startIndex == range.endIndex {
|
||||||
|
return HBParser(self, range: self.range.startIndex ..< self.range.startIndex)
|
||||||
|
}
|
||||||
return HBParser(self, range: range)
|
return HBParser(self, range: range)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -283,9 +286,6 @@ extension HBParser {
|
|||||||
{
|
{
|
||||||
unsafeAdvance()
|
unsafeAdvance()
|
||||||
}
|
}
|
||||||
if startIndex == index {
|
|
||||||
return subParser(startIndex ..< startIndex)
|
|
||||||
}
|
|
||||||
return subParser(startIndex ..< index)
|
return subParser(startIndex ..< index)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user