Header menu logo CodecMapper

CodecMapper Namespace

Type/Module Description

Builder<'T, 'Ctor>

Builder state for the Pipeline DSL. The builder keeps the constructor's remaining type in `'Ctor` so each appended field proves, at compile time, that one more argument has been supplied before `build` can close over the final record value.

Core

Low-level byte reading and writing primitives shared by the JSON and XML runtimes.

ISchema

Erased schema abstraction used internally and by advanced integrations. Most callers should stay on `Schema<'T>`, but codecs and bridges compile against this untyped representation.

Json

JSON codec compilation and runtime helpers. Compile a schema once, then reuse the resulting codec for repeated JSON serialization and deserialization.

JsonSchema

JSON Schema export for the JSON wire shape described by `Schema<'T>`. This exports the structural JSON contract implied by the schema. Mapping wrappers such as `Schema.map` and `Schema.tryMap` contribute the underlying wire shape, while field-policy wrappers affect whether object properties are listed as required.

JsonValue

Represents arbitrary JSON when a contract cannot be lowered into a more precise schema. This is the escape hatch for dynamic-key objects, heterogeneous arrays, and other JSON Schema shapes that do not fit the normal record/list/primitive model without losing parseability.

KeyValue

Flat `string,string` contract projection for config-style schemas. This backend is intentionally narrower than JSON or XML: it targets flattened key/value surfaces such as app settings or environment variables.

Schema

Helpers for building explicit schemas and reusing common built-in shapes. This is the main authoring surface for `CodecMapper`. Build a `Schema<'T>` once, then compile it into JSON or XML codecs.

Schema<'T>

A typed schema for values of `'T`. Schemas are pure descriptions. Compile them with `Json.compile` or `Xml.compile` to get executable codecs.

SchemaDefinition

The structural schema shapes understood by the compiler backends.

SchemaField

Captures one named field inside a record schema. A `SchemaField` binds the wire name, CLR type, getter, and nested schema for a single record member.

Xml

XML codec compilation and runtime helpers. The XML backend intentionally supports a smaller explicit subset than the JSON backend: element content only, repeated `` nodes for collections, and ignorable inter-element whitespace.

Yaml

YAML projection layered on top of the portable `JsonValue` model. This intentionally supports a small YAML subset suitable for config-style contracts: mappings, sequences, scalars, `null`, and quoted/plain strings.

Type something to start searching.