Class ProtoDataObjectBuilder<T>
Builds one instance while keeping scenario-relevant values explicit.
public sealed class ProtoDataObjectBuilder<T>
Type Parameters
T
- Inheritance
-
ProtoDataObjectBuilder<T>
- Inherited Members
- Extension Methods
Methods
Build()
Constructs the configured object and records value provenance in ProtoTrace.
public T Build()
Returns
- T
BuildMany(int, Action<ProtoDataObjectBuilder<T>, int>?)
Builds multiple independently resolved instances with deterministic unique sequences.
public IReadOnlyList<T> BuildMany(int count, Action<ProtoDataObjectBuilder<T>, int>? configure = null)
Parameters
countintconfigureAction<ProtoDataObjectBuilder<T>, int>
Returns
CreateAsync(CancellationToken)
Builds the value and places it into the application using its registered provisioner.
public ValueTask<T> CreateAsync(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationToken
Returns
- ValueTask<T>
CreateAsync<TResult>(CancellationToken)
Builds the input and provisions a different application result type.
public ValueTask<TResult> CreateAsync<TResult>(CancellationToken cancellationToken = default)
Parameters
cancellationTokenCancellationToken
Returns
- ValueTask<TResult>
Type Parameters
TResult
CreateManyAsync(int, Action<ProtoDataObjectBuilder<T>, int>?, CancellationToken)
Builds and provisions multiple instances when input and result types are equal.
public ValueTask<IReadOnlyList<T>> CreateManyAsync(int count, Action<ProtoDataObjectBuilder<T>, int>? configure = null, CancellationToken cancellationToken = default)
Parameters
countintconfigureAction<ProtoDataObjectBuilder<T>, int>cancellationTokenCancellationToken
Returns
CreateManyAsync<TResult>(int, Action<ProtoDataObjectBuilder<T>, int>?, CancellationToken)
Builds and provisions multiple independently resolved instances.
public ValueTask<IReadOnlyList<TResult>> CreateManyAsync<TResult>(int count, Action<ProtoDataObjectBuilder<T>, int>? configure = null, CancellationToken cancellationToken = default)
Parameters
countintconfigureAction<ProtoDataObjectBuilder<T>, int>cancellationTokenCancellationToken
Returns
- ValueTask<IReadOnlyList<TResult>>
Type Parameters
TResult
Explain()
Resolves and describes all values without constructing the object. For types registered with a
factory, only the explicit With(...) values and the construction source are described.
public ProtoDataExplanation Explain()
Returns
With<TMember>(Expression<Func<T, TMember>>, TMember)
Sets a scenario-relevant property explicitly.
public ProtoDataObjectBuilder<T> With<TMember>(Expression<Func<T, TMember>> member, TMember value)
Parameters
memberExpression<Func<T, TMember>>valueTMember
Returns
Type Parameters
TMember