Table of Contents

Bodu.Text.Configuration guides

Recipe-style walk-throughs for Bodu.Text.Configuration - the layered, EditorConfig-style parser, resolver, and typed view built on ConfigurationDocument, ConfigurationView, and ConfigurationParseOptions.

If you are new to the library, start with the introduction, the Core concepts glossary, and the getting-started page. The guides below assume you know the vocabulary (document, view, profile, target path, preamble, glob pattern, key mapping, unset, diagnostic mode).

How the library works

Bodu Text Configuration pipeline

A configuration document is parsed once and then projected - through a target path - into a flat ConfigurationView. The reader produces a ConfigurationDocument over the read-only IniDocumentBase model (each IniSection stays editable through SetEntry); the resolver layers the preamble plus matching glob-anchored sections in source order; the view exposes typed accessors that return the effective value for each colon-delimited key.

Guides

Parsing and profiles

The parse half - ConfigurationDocument.Parse, non-throwing and diagnostic-collecting parses, ConfigurationParseOptions field by field, and the four profiles (Bodu, EditorConfigCompatible, Strict, Relaxed).

Views and resolution

The resolve half - Resolve() → ConfigurationView, EditorConfig glob anchoring against a target path, typed value getters, key projection via ConfigurationKey / ConfigurationKeyOptions, and ConfigurationPattern glob matching.

Diagnostics

The structured ConfigurationDiagnostic record, diagnostic modes and severities, and the full ConfigurationDiagnosticCode catalogue - what triggers each code and how to build IDE-style validation.

Reading path

  1. Parsing and profiles - parse text into a ConfigurationDocument and pick the profile that matches your file's dialect.
  2. Views and resolution - resolve the document into the flat, typed ConfigurationView your application code consumes.
  3. Diagnostics - when a file does not parse cleanly, read the structured diagnostics instead of guessing from an exception message.

Hosting the resolved view inside Microsoft.Extensions.Configuration (ASP.NET Core, Generic Host, IOptions<T> binding)? Continue with the bridge package guides at Bodu.Extensions.Configuration.Text.

Namespace map

Namespace What lives here Static docs
Bodu.Text.Configuration Static façade (ConfigurationDocument), resolved view (ConfigurationView), profile and option types (ConfigurationParseOptions, ConfigurationResolveOptions, ConfigurationWriteOptions, ConfigurationKeyOptions), key model (ConfigurationKey), diagnostics (ConfigurationDiagnostic, ConfigurationParseResult), and the resolver pattern engine (ConfigurationPattern). Introduction · Core concepts · Getting started

Where to go next