diff --git a/Sources/Tokenizer/Tokenizer.swift b/Sources/Tokenizer/Tokenizer.swift index 749700f..c1ade2b 100644 --- a/Sources/Tokenizer/Tokenizer.swift +++ b/Sources/Tokenizer/Tokenizer.swift @@ -1502,9 +1502,13 @@ public struct Tokenizer: ~Copyable { } } + // swift-format-ignore: NeverForceUnwrap @inline(__always) private mutating func clearPublicID() { - self.currentDOCTYPE.publicID = [] + switch self.currentDOCTYPE.publicID { + case .some: self.currentDOCTYPE.publicID!.removeAll(keepingCapacity: true) + case .none: self.currentDOCTYPE.publicID = [] + } } @inline(__always) @@ -1515,9 +1519,13 @@ public struct Tokenizer: ~Copyable { } } + // swift-format-ignore: NeverForceUnwrap @inline(__always) private mutating func clearSystemID() { - self.currentDOCTYPE.systemID = [] + switch self.currentDOCTYPE.systemID { + case .some: self.currentDOCTYPE.systemID!.removeAll(keepingCapacity: true) + case .none: self.currentDOCTYPE.systemID = [] + } } @inline(__always)