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