On this page
class Bundler::Molinillo::DependencyGraph::DeleteEdge
@!visibility private (see DependencyGraph#delete_edge
)
Attributes
@return [String] the name of the destination of the edge
@return [String] the name of the origin of the edge
@return [Object] the requirement that the edge represents
Public Class Methods
# File lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb, line 12
def self.action_name
:delete_edge
end
(see Action.action_name
)
# File lib/bundler/vendor/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
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
Public Instance Methods
# File lib/bundler/vendor/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
(see Action#down
)
# File lib/bundler/vendor/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
@param [DependencyGraph] graph the graph to find vertices from @return [Edge] The edge this action adds
# File lib/bundler/vendor/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
(see Action#up
)
Ruby Core © 1993–2017 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.