class Molinillo::Resolver(R, S)

Overview

This class encapsulates a dependency resolver. The resolver is responsible for determining which set of dependencies to activate, with feedback from the {#specification_provider}

Defined in:

molinillo/resolution.cr
molinillo/resolver.cr

Constructors

Instance Method Summary

Constructor Detail

def self.new(specification_provider : Molinillo::SpecificationProvider(R, S), resolver_ui : Molinillo::UI) #

Initializes a new resolver. @param [SpecificationProvider] specification_provider see {#specification_provider} @param [UI] resolver_ui see {#resolver_ui}


[View source]

Instance Method Detail

def resolve(requested : Array(R), base = DependencyGraph(R, R).new) #

Resolves the requested dependencies into a {DependencyGraph}, locking to the base dependency graph (if specified) @param [Array] requested an array of 'requested' dependencies that the {#specification_provider} can understand @param [DependencyGraph,nil] base the base dependency graph to which dependencies should be 'locked'


[View source]
def resolver_ui : UI #

@return [UI] the UI module used to communicate back to the user during the resolution process


[View source]
def specification_provider : SpecificationProvider(R, S) #

@return [SpecificationProvider] the specification provider used in the resolution process


[View source]