The resolver is ultimately responsible for reporting back if there are any graph errors. Currently, the resolver supports the following validatoins:
Missing module
Missing subcomponent
Missing provider
Duplicate provider
For parity with existing Cleanse runtime validations, the last validation needed is to detect cyclical dependencies.
The resolver takes in a LinkedInterface instance emitted from the Linker pipeline step, and outputs a list of ResolvedComponent instances for each root component in the provided interface. This ResolvedComponent type holds the DAG and any diagnostics (errors) found while performing resolution. The ResolvedComponent instance does not necessarily emit a complete graph, as there can be errors.
The resolver is ultimately responsible for reporting back if there are any graph errors. Currently, the resolver supports the following validatoins:
For parity with existing Cleanse runtime validations, the last validation needed is to detect cyclical dependencies.
The resolver takes in a
LinkedInterface
instance emitted from the Linker pipeline step, and outputs a list ofResolvedComponent
instances for each root component in the provided interface. ThisResolvedComponent
type holds the DAG and any diagnostics (errors) found while performing resolution. TheResolvedComponent
instance does not necessarily emit a complete graph, as there can be errors.