ddn.data.xml.internal.parser

Internal: well-formedness checks + tree building.

This module is not part of the public API and may change at any time.

Types 1

Internal parse options.

This intentionally mirrors the public XmlParseOptions, but is kept internal to avoid circular imports.

Fields
bool recover
bool forbidDoctype
bool expandEntities
bool preserveWhitespace
bool allowExternalSubset
string[] catalogFiles
bool validateDtd
bool applyDtdDefaults
bool useArenaAllocator

Functions 24

fnXmlDocument parseDocumentInternal( string input, XmlInternalParseOptions options, string systemId = "") @safeParses an XML document into a DOM.
private fnstring storeString(XmlDocument doc, string value) @safe
private fnvoid parseExternalSubsetEntities( XmlDocument doc, XmlDocumentType doctype, string systemLiteral, string publicLiteral, string baseSystemId, XmlInternalParseOptions options, XmlParserLimits limits, XmlLocation loc) @safe
private fnstring resolveSystemWithCatalogs(string systemLiteral, string[] catalogFiles) @safe
private fnvoid parseInternalSubsetEntities( XmlDocument doc, XmlDocumentType doctype, string internalSubset, XmlLocation loc, XmlParserLimits limits, XmlInternalParseOptions options) @safe
private fnvoid parseDtdDeclarations( XmlDocument doc, XmlDocumentType doctype, string content, XmlLocation loc, XmlParserLimits limits, XmlInternalParseOptions options) @safe
private fnstring handleDtdConditionalSections(string content, XmlLocation loc) @safe
private fnvoid parseElementDeclarations(XmlDocument doc, XmlDocumentType doctype, string content, XmlLocation loc) @safe
private fnvoid parseNotationDeclarations(XmlDocument doc, XmlDocumentType doctype, string content, XmlLocation loc) @safe
private fnvoid parseEntityDeclarations( XmlDocument doc, XmlDocumentType doctype, string content, XmlLocation loc, XmlParserLimits limits, bool parameterOnly = false, bool generalOnly = false) @safe
private fnvoid parseAttlistDeclarations(XmlDocument doc, XmlDocumentType doctype, string content, XmlLocation loc) @safe
private fnstring readToken(string s, ref size_t i) @safe
private fnvoid validateDtdDocument(XmlDocument doc, XmlInternalParseOptions options, XmlParserLimits limits) @safe
private fnvoid validateDtdElementModels(XmlDocument doc, XmlElement root) @safe
private fnvoid validateIdsAndIdrefs(XmlDocument doc, XmlElement root) @safe
private fnstring[] splitWhitespace(string s) @safe
private fnstring loadExternalGeneralEntity( XmlDocument doc, XmlInternalParseOptions options, XmlParserLimits limits, XmlLocation loc, string systemId) @safe
private fnstring normalizeDtdDefaultValue( XmlDocument doc, string raw, XmlInternalParseOptions options, XmlParserLimits limits, XmlLocation loc) @safe
private fnvoid parseXmlDeclarationIntoDocument( XmlDocument doc, string raw, XmlLocation loc) @safe
private fnvoid validateXmlChars(string text, XmlVersion xmlVersion, XmlLocation loc) @safe
private fnvoid extractDoctypeMetadata( string raw, XmlLocation loc, out string name, out string publicId, out string systemId, out string internalSubset) @safe
private fnstring normalizePublicId(string publicId) @safe nothrow
private fnstring readQuoted(string s, ref size_t i) @safe pure nothrow