Module SemanticPuppet::Dependency::GraphNode
In: lib/semantic_puppet/dependency/graph_node.rb

Methods

Included Modules

Comparable

Public Instance methods

Constrains the named module to suitable releases, as determined by the given block.

@example Version-locking currently installed modules

    installed_modules.each do |m|
      @graph.add_constraint('installed', m.name, m.version) do |node|
        m.version == node.version
      end
    end

@param source [String, Symbol] a name describing the source of the

              constraint

@param mod [String] the name of the module @param desc [String] a description of the enforced constraint @yieldparam node [GraphNode] the node to test the constraint against @yieldreturn [Boolean] whether the node passed the constraint @return [void]

Adds the given dependency name to the list of dependencies.

@param name [String] the dependency name @return [void]

@api internal @return [{ String => SortedSet<GraphNode> }] the satisfactory

        dependency nodes

@return [Array<String>] the list of dependency names

Determines whether the modules dependencies are satisfied by the known releases.

@return [Boolean] true if all dependencies are satisfied

@param release [ModuleRelease] the release to test

[Validate]