Crates.io | header-config |
lib.rs | header-config |
version | 0.1.5 |
created_at | 2024-12-21 06:31:14.041733+00 |
updated_at | 2025-03-28 20:34:34.737059+00 |
description | Runtime parser for hierarchical configurations using Markdown-style headers |
homepage | |
repository | https://gitlab.com/porky11/header-config |
max_upload_size | |
id | 1490786 |
size | 8,929 |
A Rust library for parsing hierarchical configuration files using Markdown-style headers, transforming nested sections into flat key-value pairs with namespaced keys.
Add to your Cargo.toml
:
[dependencies]
header-config = "0.1"
# Server Config
port 8080
timeout 30
# Database
host localhost
user admin
## Replica
host replica.db
#
symbolskey
without value)## Subsection
)The format looks like this:
key1 value
key2
# HeaderA
key1 value
key2
# HeaderB
key1 value
key2
## SubheaderA
key1 value
key2
## SubheaderB
key1 value
key2
The created mapping will be something like this:
"key1" -> "value"
"key2" -> ""
"HeaderA:key1" -> "value"
"HeaderA:key2" -> ""
"HeaderB:key1" -> "value"
"HeaderB:key2" -> ""
"HeaderB:SubheaderA:key1" -> "value"
"HeaderB:SubheaderA:key2" -> ""
"HeaderB:SubheaderB:key1" -> "value"
"HeaderB:SubheaderB:key2" -> ""