Text Module

StringBuilder, Encoding, JSON, XML, Regex, and web encoders.

StringBuilder

include/System/Text/StringBuilder.hpp

Status: Partial

Mutable string buffer backed by std::string. Key methods:

Encoding

include/System/Text/Encoding.hpp

Abstract base class. Static factory methods:

Core methods: GetBytes(string), GetString(bytes), GetByteCount(string).

Encoding Implementations

ClassHeaderStatus
UTF8EncodingSystem/Text/UTF8Encoding.hppDone
ASCIIEncodingSystem/Text/ASCIIEncoding.hppDone
Latin1EncodingSystem/Text/Latin1Encoding.hppDone
UnicodeEncodingSystem/Text/UnicodeEncoding.hppPartial
UTF32EncodingSystem/Text/UTF32Encoding.hppPartial
UTF7EncodingSystem/Text/UTF7Encoding.hppStub

JSON (System::Text::Json)

include/System/Text/Json/

Status: Done — backed by nlohmann/json v3.10.4 at vendor/nlohmann/json.hpp.

ClassDescription
JsonDocumentParse and navigate JSON
JsonElementAn element within a JSON document
JsonSerializerSerialize/deserialize to/from JSON
JsonSerializerOptionsOptions for serialization
JsonValueKindEnum: Undefined, Object, Array, String, Number, True, False, Null

XML (System::Xml)

include/System/Xml/

Status: Done — backed by tinyxml2 at vendor/tinyxml2/.

ClassDescription
XmlReadertinyxml2 DOM cursor; event-based reading
XmlWritertinyxml2 DOM builder + XMLPrinter
Linq::XDocumentLINQ-to-XML document
Linq::XElementXML element with attributes and children
Linq::XAttributeXML attribute (name=value)
Linq::XNameXML name (namespace + local name)

Regular Expressions

include/System/Text/RegularExpressions/

Compatibility headers only:

Web Encoders (System::Text::Encodings::Web)

Stub classes for web-safe encoding:

Other Text Types

TypeDescription
RuneUnicode scalar value (UTF-32 code point)
AsciiASCII character utilities
CompositeFormatPre-parsed format string