parseSdlCdm

fnauto parseSdlCdm(Builder = CdmBuilder)(const(char)[] input, string source = "") @safe

Parse SDL text into a CDM document.

Produces a CdmDocument preserving comments, source locations, and formatting metadata for roundtrip fidelity.

Parameters

inputSDL text to parse.
sourceOptional source identifier (file path, URI).

Returns

A CdmDocument containing the parsed structure.

Throws

Exception on parse error.

Examples

auto doc = parseSdlCdm(`server host="localhost" port=8080`);
assert(doc.root.nodeName == "server");
assert(doc.root.getAttribute("host").as!string == "localhost");
fnauto parseSdlCdm(Builder = CdmBuilder)(File file) @safe

Parse SDL file.

Parameters

fileFile handle to read SDL content from.

Returns

Builder.ResultCdmDocument for CdmBuilder, var for VarBuilder.

Throws

Exception on I/O or parse error.
fnbool parseSdlCdm(out CdmDocument doc, const(char)[] input, out SdlError err, string source = "", SdlPolicy policy = SdlPolicy.init) @trusted

Non-throwing parse variant.