Skip to content

Compono.CompositionRequestDescriptor

Compono

Compono

CompositionRequestDescriptor Struct

The compact, compile-time-constructible value a generated ICompositionPlan<T> passes to Resolve<TValue>(CompositionRequestDescriptor) for one constructor parameter or required member - or, for a test-framework integration composing a CompositionRow, one of a test method's own parameters (TestParameter).

public readonly struct CompositionRequestDescriptor

Remarks

A plain struct, not a record struct - equality, Deconstruct, and record-style formatting aren't part of this type's contract, per docs/adr/0010-composition-request-pipeline-and-diagnostics-tracing.md's second amendment. Ordinal, not Name, is the identity Compono.CompositionContext uses for path/random-fork keys - Name exists for diagnostic display only, per docs/adr/0012-composition-path-identity-and-deterministic-random-forking.md's second amendment.

Constructors
CompositionRequestDescriptor(CompositionRequestKind, int, string, Type, Nullability) Creates a CompositionRequestDescriptor.
Properties
DeclaringType The type whose constructor/required member declares this parameter/member, or the test class for a TestParameter request - null for a request with no member identity of its own (a collection element, dictionary key/value, or manual resolve). Never fed into random-fork hashing - used only for configuration-rule matching (stage 4) and collection-size override lookup (stage 7). See docs/adr/0020-composition-configuration-rules.md.
Kind Whether this is a constructor parameter, a required member, or (for a CompositionRow) a test method's own parameter.
Name The parameter or member name, for diagnostic display only.
Nullability Whether the requesting parameter or member is nullable-annotated.
Ordinal The stable identity this request forks random state and builds path identity from - never Name.