ContractResult class final

What the harness found in one ContractCase.

Constructors

ContractResult(ContractCase contractCase, List<SmfIssue> issues, {Resolution? resolution, Collection? collection, ValidationResult? validation, Map<Role<Object>, Object?>? choices, Map<String, String> answers = const {}, RenderedApp? app, RoleHookRequest? hook})
Creates the result.
const

Properties

answers → Map<String, String>
The values of role options by name that make the choices of the roles whose questions the harness answered, as a user who presses Enter, without asking, such as --start for the first of several screens that can start the app; see RoleTemplate.optionsOf.
final
app → RenderedApp?
The rendered app, if the harness rendered it: when it renders apps and the stages before found no error.
final
appKey → String?
The modules of the app with their variants, and the values that the case gives the options of the roles, each as --<name>=<value> in the order of the names, which tell apart the apps of different cases, or null if the case did not resolve.
no setter
choices → Map<Role<Object>, Object?>?
The results of the roles' choices, if the harness rendered the app.
final
collection → Collection?
The contributions of the app, if the case resolved: as stage 4 makes them, and once the harness rendered the app, decided by the choices, so that a contribution with conditions on what the roles chose applies only where they hold (see Collection.decide).
final
contractCase → ContractCase
The case.
final
errors → List<SmfIssue>
The errors among issues.
no setter
hashCode → int
The hash code for this object.
no setterinherited
hook → RoleHookRequest?
The data and the roles of the app, as the hooks of its roles got them when the harness rendered it: the data of the roles that applies, the present roles, the context of the harness, the choices of the roles, and the manualSteps with their setupLink; null without an app.
final
issues → List<SmfIssue>
The errors and warnings found: those of the stages 3 to 5, of the choices of the roles that the app is rendered with, and of the checks of the rendered app.
final
manualSteps → List<PlannedManualStep>
The steps of the app that its developer does by hand, each once, in order and with their contributors, as stage 5 planned them, or none if the case did not resolve (see ValidationResult.manualSteps).
no setter
resolution → Resolution?
The modules of the app, if the case resolved.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
The link to the guide of the manualSteps, which the ContractHarness.setupLink named for them when stage 5 planned them, or null for an app without steps, a harness without a link, or a case that did not resolve (see ValidationResult.setupLink).
no setter
validation → ValidationResult?
The result of stage 5, with the order of every socket and the merged pubspec, if the case resolved.
final
warnings → List<SmfIssue>
The warnings about what the app is made of among issues, such as a destination that no main navigation leads to, each with its code (see SmfIssue.code).
no setter

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited