class RBT::ReverseDependencies
Public Class Methods
[](i = ARGV)
click to toggle source
dependencies?(i)
click to toggle source
new( work_on_these_programs = [ 'atk', 'glib', 'libjpeg', 'pango', 'tiff', 'libxft', 'cairo >= 1.6' ], run_already = true ) { || ... }
click to toggle source
#¶ ↑
initialize¶ ↑
#¶ ↑
# File lib/rbt/misc/reverse_dependencies.rb, line 33 def initialize( work_on_these_programs = [ 'atk', 'glib', 'libjpeg', 'pango', 'tiff', 'libxft', 'cairo >= 1.6' ], run_already = true ) reset set_work_on_these_programs( work_on_these_programs ) # ======================================================================= # # === Handle Blocks next # ======================================================================= # if block_given? yielded = yield case yielded when :be_quiet @be_verbose = false end end run if run_already end
Public Instance Methods
add(i)
click to toggle source
do_work_on_the_programs()
click to toggle source
#¶ ↑
do_work_on_the_programs
¶ ↑
#¶ ↑
# File lib/rbt/misc/reverse_dependencies.rb, line 158 def do_work_on_the_programs @work_on_these_programs.each {|this_program| this_program = this_program.split(' ').first if this_program.include? ' ' entries = return_all_dependencies_of_this_program(this_program) if entries.size == 0 e "#{rev}The program #{cadetblue(this_program)} has no "\ "listed dependent programs." else e "#{rev}The program #{cadetblue(this_program)} depends "\ "on these #{entries.size} programs:" ee ' ' add(entries) # ← Add these dependencies to the unique deps. ee steelblue(entries.join(', ').strip) end e unless entries.empty? entries.each {|inner_this_program| _ = return_all_dependencies_of_this_program(inner_this_program) # =================================================================== # # Indent towards the right side once. # =================================================================== # if _.empty? ee " No #{tomato('secondary dependencies')} "\ "were found for #{mediumpurple(inner_this_program)}.\n" else ee " And the #{tomato('secondary dependencies')} "\ "of #{mediumpurple(inner_this_program)} are: "\ "#{steelblue(_.join(', ').strip)}\n" add(_) end } e } report_the_unique_dependencies if @be_verbose end
e(i = '')
click to toggle source
ee(i = '')
click to toggle source
report_the_unique_dependencies()
click to toggle source
reset()
click to toggle source
#¶ ↑
reset (reset tag)¶ ↑
#¶ ↑
Calls superclass method
RBT::LeanPrototype#reset
# File lib/rbt/misc/reverse_dependencies.rb, line 65 def reset super() # ======================================================================= # # === :be_verbose # # This should be true by default. # ======================================================================= # set_be_verbose # ======================================================================= # # === @array_unique_dependencies # ======================================================================= # @array_unique_dependencies = [] # ======================================================================= # # === @hash # ======================================================================= # @hash = {} all_programs.each {|this_program| this_program.strip! if this_program.include? ' ' this_program = this_program.split(' ').first end dataset = load_dataset_from_this_expanded_cookbook(this_program) @hash.update( { this_program.to_sym => dataset } ) } end
return_all_dependencies_of_this_program(this_program)
click to toggle source
#¶ ↑
return_all_dependencies_of_this_program
¶ ↑
This method can be used to return all dependencies of the given program at hand.
#¶ ↑
# File lib/rbt/misc/reverse_dependencies.rb, line 127 def return_all_dependencies_of_this_program(this_program) if this_program.include? ' ' this_program = this_program.split(' ').first end this_program = this_program.to_sym if @hash.include? this_program @hash[this_program]['required_deps_on'] else e "\n"+ tomato('The program ')+steelblue(this_program)+ tomato(' is not included.') end end
run()
click to toggle source
set_work_on_these_programs(i)
click to toggle source