:sig DValue yaml_decode(String s) :params s : YAML source string return value : decoded DValue :see >markup yaml_encode json_decode xml_decode 0_DValue :content Parses a practical YAML subset into a `DValue`. `yaml_decode()` is designed for concise UCE config files. It supports a practical YAML subset and does not implement anchors, aliases, tags, directives, or complex inline collection syntax. Try the live example in the [YAML demo](../demo/yaml.uce). Example: ```uce String source = "app:\n" " name: UCE Starter\n" " debug: true\n" " port: 8080\n" " paths:\n" " - site\n" " - cache\n"; DValue cfg = yaml_decode(source); cfg["app"]["name"].to_string(); // UCE Starter cfg["app"]["debug"].to_bool(); // true cfg["app"]["port"].to_s64(); // 8080 cfg["app"]["paths"]["1"].to_string(); // cache ``` Supported syntax: - indentation-based maps - indentation-based lists - `key: value` map entries - list entries with `- value` - quoted strings with single or double quotes - booleans `true` and `false` - empty/null-ish values as empty strings - comments beginning with `#` outside quoted strings - literal block strings with `|` - folded block strings with `>` - optional `---` and `...` document markers Numeric-looking values are stored as strings, matching `json_decode()`'s current behavior. Use `to_s64()`, `to_u64()`, or `to_f64()` when reading numeric config values. Malformed input raises a request-visible `yaml_decode(): ...` runtime error.