In Files

  • bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb

Class/Module Index [+]

Quicksearch
No matching classes.

Bundler::Molinillo::DependencyGraph::Log

A log for dependency graph actions

Public Class Methods

new() click to toggle source

Initializes an empty log

 
 # File bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb, line 15
def initialize
 @current_action = @first_action = nil
end
 

Public Instance Methods

add_edge_no_circular(graph, origin, destination, requirement) click to toggle source

@macro action

 
 # File bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb, line 41
def add_edge_no_circular(graph, origin, destination, requirement)
 push_action(graph, AddEdgeNoCircular.new(origin, destination, requirement))
end
 
add_vertex(graph, name, payload, root) click to toggle source

@macro action

 
 # File bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb, line 31
def add_vertex(graph, name, payload, root)
 push_action(graph, AddVertex.new(name, payload, root))
end
 
delete_edge(graph, origin_name, destination_name, requirement) click to toggle source

{include:DependencyGraph#delete_edge} @param [Graph] graph the graph to perform the action on @param [String] origin_name @param [String] destination_name @param [Object] requirement @return (see DependencyGraph#delete_edge)

 
 # File bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb, line 51
def delete_edge(graph, origin_name, destination_name, requirement)
 push_action(graph, DeleteEdge.new(origin_name, destination_name, requirement))
end
 
detach_vertex_named(graph, name) click to toggle source

@macro action

 
 # File bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb, line 36
def detach_vertex_named(graph, name)
 push_action(graph, DetachVertexNamed.new(name))
end
 
each() click to toggle source

@!visibility private Enumerates each action in the log @yield [Action]

 
 # File bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb, line 77
def each
 return enum_for unless block_given?
 action = @first_action
 loop do
 break unless action
 yield action
 action = action.next
 end
 self
end
 
pop!(graph) click to toggle source

Pops the most recent action from the log and undoes the action @param [DependencyGraph] graph @return [Action] the action that was popped off the log

 
 # File bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb, line 63
def pop!(graph)
 return unless action = @current_action
 unless @current_action = action.previous
 @first_action = nil
 end
 action.down(graph)
 action
end
 
reverse_each() click to toggle source

@!visibility private Enumerates each action in the log in reverse order @yield [Action]

 
 # File bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb, line 91
def reverse_each
 return enum_for(:reverse_each) unless block_given?
 action = @current_action
 loop do
 break unless action
 yield action
 action = action.previous
 end
 self
end
 
rewind_to(graph, tag) click to toggle source

@macro action

 
 # File bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb, line 103
def rewind_to(graph, tag)
 loop do
 action = pop!(graph)
 raise "No tag #{tag.inspect} found" unless action
 break if action.class.action_name == :tag && action.tag == tag
 end
end
 
set_payload(graph, name, payload) click to toggle source

@macro action

 
 # File bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb, line 56
def set_payload(graph, name, payload)
 push_action(graph, SetPayload.new(name, payload))
end
 
tag(graph, tag) click to toggle source

@macro action

 
 # File bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb, line 26
def tag(graph, tag)
 push_action(graph, Tag.new(tag))
end
 

AltStyle によって変換されたページ (->オリジナル) /