Я работаю над синтаксическим анализом XML, и мы обнаружили, что парсер XML потратил много времени, бесполезно проверяя совместимость UTF. Например, допустим, я анализирую что-то похожее на:
<root><ß❤></ß❤></root>
В наших пламенных графиках мы потратили бы много времени на проверку того, был ли root
или ß❤
действительным UTF.
Одним из способов избежать этой проверки является предварительное условие, что XML ввод действителен Rust &str
. Поскольку это так, а разделители основаны на ASCII, теоретически разделение между любыми двумя разделителями ASCII должно давать valid & str, который мы не будем проверять.
Это безопасное предположение? Или даже лучше, есть ли ящик, который делает что-то подобное (например, CSV
)?