class Gem::Resolver::Molinillo::DependencyGraph::DeleteEdge - Documentation for Ruby 3.2

# class Gem::Resolver::Molinillo::DependencyGraph::DeleteEdge

@!visibility private (see `DependencyGraph#delete_edge`)

### Attributes

destination_name[R]

@return [String] the name of the destination of the edge

origin_name[R]

@return [String] the name of the origin of the edge

requirement[R]

@return [Object] the requirement that the edge represents

### Public Class Methods

action_name() click to toggle source

(see `Action.action_name`)

    # File lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/delete_edge.rb, line 12
    def self.action_name
      :delete_edge
    end

new(origin_name, destination_name, requirement) click to toggle source

Initialize an action to add an edge to a dependency graph @param [String] `origin_name` the name of the origin of the edge @param [String] `destination_name` the name of the destination of the edge @param [Object] requirement the requirement that the edge represents

    # File lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/delete_edge.rb, line 56
    def initialize(origin_name, destination_name, requirement)
      @origin_name = origin_name
      @destination_name = destination_name
      @requirement = requirement
    end

### Public Instance Methods

down(graph) click to toggle source

(see `Action#down`)

    # File lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/delete_edge.rb, line 24
    def down(graph)
      edge = make_edge(graph)
      edge.origin.outgoing_edges << edge
      edge.destination.incoming_edges << edge
      edge
    end

make_edge(graph) click to toggle source

@param [DependencyGraph] graph the graph to find vertices from @return [Edge] The edge this action adds

    # File lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/delete_edge.rb, line 44
    def make_edge(graph)
      Edge.new(
        graph.vertex_named(origin_name),
        graph.vertex_named(destination_name),
        requirement
      )
    end

up(graph) click to toggle source

(see `Action#up`)

    # File lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/delete_edge.rb, line 17
    def up(graph)
      edge = make_edge(graph)
      edge.origin.outgoing_edges.delete(edge)
      edge.destination.incoming_edges.delete(edge)
    end