PureXML/Sources
Mihaela Mihaljevic e62995a7a8 feat(emitting): output encoding for UTF and single-byte families
Add PureXML.Parsing.ByteEncoder, the inverse of ByteDecoder, and a
Serializer.serialize(_:encoding:) / PureXML.serialize(_:encoding:) that
emits bytes in a chosen encoding (the libxml2 save-with-encoding model).
Covers the Unicode transformation formats and the single-byte legacy
families, built by inverting the existing vendored to-Unicode tables, so
no new data is introduced. The declaration carries the canonical encoding
name, a UTF-16/32 stream is preceded by a byte-order mark, and any
unrepresentable scalar becomes a decimal numeric character reference, so
output round-trips. CJK output encodings remain (tracked on #106).

Part of #106, #105
2026-06-09 09:32:39 +02:00
..
Canonical feat(canonical): C14N 2.0 sequential prefix rewrite, QName-aware values, node-set selection (#85) 2026-06-09 04:06:02 +02:00
Catalog feat(catalog): honor group-level prefer override 2026-06-08 18:05:03 +02:00
Emitting feat(emitting): output encoding for UTF and single-byte families 2026-06-09 09:32:39 +02:00
HTML feat(html): vendor the complete WHATWG named entity set (#84) 2026-06-09 07:45:55 +02:00
Model feat(model): first-class doctype/entity-reference/namespace nodes, ownerDocument, adoption (#90) 2026-06-09 03:43:24 +02:00
Parsing feat(emitting): output encoding for UTF and single-byte families 2026-06-09 09:32:39 +02:00
Pattern
Regex feat(regex): Unicode category escapes and character-class subtraction 2026-06-08 15:15:46 +02:00
Schema fix(xsd): locate identity-constraint errors at the offending node 2026-06-09 08:57:33 +02:00
Stream
Validation feat(html): conformance validator as composable Validation rules 2026-06-09 04:39:03 +02:00
XInclude feat(xinclude): range inclusion via XPointer range model (#87) 2026-06-09 04:19:38 +02:00
XPath feat(xpath): eval-time namespace context and XPointer xmlns()/xpath1() schemes 2026-06-08 16:00:15 +02:00
XPointer feat(xpointer): range(), range-to(), and string-range() schemes (#88) 2026-06-09 04:16:23 +02:00
XSLT feat(xslt): document() fragments and base-URI resolution, completing #82 2026-06-09 03:12:49 +02:00
API.swift feat(emitting): output encoding for UTF and single-byte families 2026-06-09 09:32:39 +02:00
Lint.swift
PureXML.swift
QuickFix.swift feat(editor): structured quick-fixes from completions 2026-06-08 13:35:33 +02:00