EvaluatorsBuilder
A result builder that enables declarative evaluator lists.
Declaration
@resultBuilder struct EvaluatorsBuilder<Sample, Subject> where Sample : SampleProtocol, Subject : EvaluationSubjectOverview
Apply this builder to the evaluators property to remove the need for explicit array literals and type annotations:
@EvaluatorsBuilder<ModelSample<String>, ModelSubject<String>>
func buildEvaluators() -> [any EvaluatorProtocol<ModelSample<String>, ModelSubject<String>>] {
Evaluator<ModelSample<String>> { sample, subject in
Metric("Match").scoring(1.0)
}
}