class RBT::Cookbooks::DisplayCookbookDataset

Constants

LEFT_PADDING
#

RBT::Cookbooks::DisplayCookbookDataset::LEFT_PADDING

#
REPLACE_PLUS_WITH_LONG_NAME
#

REPLACE_PLUS_WITH_LONG_NAME

#

Public Class Methods

e(i = '') click to toggle source
#

RBT::Cookbooks::DisplayCookbookDataset.e

#
# File lib/rbt/cookbooks/display_cookbook_dataset/feedback/feedback_url.rb, line 19
def self.e(i = '')
  puts i
end
feedback_all(i) click to toggle source
#

DisplayCookbookDataset.feedback_all

#
# File lib/rbt/cookbooks/display_cookbook_dataset/feedback/feedback.rb, line 406
def self.feedback_all(i)
  RBT::Cookbooks::DisplayCookbookDataset::Feedback.feedback_all(i)
end
feedback_all_binaries(i) click to toggle source
#

DisplayCookbookDataset.feedback_all_binaries

Usage:

DisplayCookbookDataset.feedback_all_binaries 'coreutils'
#
# File lib/rbt/cookbooks/display_cookbook_dataset/feedback/feedback.rb, line 416
def self.feedback_all_binaries(i)
  RBT::Cookbooks::DisplayCookbookDataset::Feedback.feedback_all_binaries(i)
end
feedback_all_libraries(i) click to toggle source
#

RBT::Cookbooks::DisplayCookbookDataset::Feedback.feedback_all_libraries

Usage:

DisplayCookbookDataset.feedback_all_binaries 'coreutils'
#
# File lib/rbt/cookbooks/display_cookbook_dataset/feedback/feedback.rb, line 390
def self.feedback_all_libraries(i)
  RBT::Cookbooks::DisplayCookbookDataset::Feedback.feedback_all_libraries(i)
end
feedback_extra_description( of_this_program ) click to toggle source
#

DisplayCookbookDataset.feedback_extra_description

#
# File lib/rbt/cookbooks/display_cookbook_dataset/feedback/feedback.rb, line 423
def self.feedback_extra_description(
    of_this_program
  )
  RBT::Cookbooks::DisplayCookbookDataset::Feedback.feedback_extra_information(
    of_this_program
  )
end
feedback_local_base(i) click to toggle source
#

RBT::Cookbooks::DisplayCookbookDataset.feedback_local_base

#
# File lib/rbt/cookbooks/display_cookbook_dataset/feedback/feedback.rb, line 434
def self.feedback_local_base(i)
  RBT::Cookbooks::DisplayCookbookDataset::Feedback.feedback_base(i)
end
feedback_local_location(i) click to toggle source
#

DisplayCookbookDataset.feedback_local_location

#
# File lib/rbt/cookbooks/display_cookbook_dataset/feedback/feedback.rb, line 373
def self.feedback_local_location(i)
  RBT::Cookbooks::DisplayCookbookDataset::Feedback.feedback_local_location(i)
end
feedback_make_options(i = ARGV) click to toggle source
#

DisplayCookbookDataset.feedback_make_options

#
# File lib/rbt/cookbooks/display_cookbook_dataset/feedback/feedback.rb, line 380
def self.feedback_make_options(i = ARGV)
  RBT::Cookbooks::DisplayCookbookDataset::Feedback.feedback_make_options(i)
end
feedback_program_description(i) click to toggle source
#

DisplayCookbookDataset.feedback_program_description

#
# File lib/rbt/cookbooks/display_cookbook_dataset/feedback/feedback.rb, line 397
def self.feedback_program_description(i)
  RBT::Cookbooks::DisplayCookbookDataset::Feedback.feedback_description(i)
end
feedback_url( i = ARGV ) click to toggle source
#

RBT::Cookbooks::DisplayCookbookDataset.feedback_url

This method will feedback information about the url of a program. Each member inside @remote_urls is a string, and we will report all of them.

#
# File lib/rbt/cookbooks/display_cookbook_dataset/feedback/feedback_url.rb, line 30
def self.feedback_url(
    i = ARGV
  )
  i = i.first if i.is_a? Array
  Feedback.register(i) unless Feedback.dataset?
  result = nil
  can_be_found_in_this_cookbook = RBT.individual_cookbooks_directory?+i+'.yml'
  cliner {
    print Colours.simp(' => URL for ')+
          Colours.sfancy(i)
    # ===================================================================== #
    # Next, display where it is defined.
    # ===================================================================== #
    unless can_be_found_in_this_cookbook.nil?
      e Colours.simp(' (as defined in ')+
        Colours.sfile(can_be_found_in_this_cookbook)+')'
    end
    e Colours.simp('    points to: ')
    e
    # ===================================================================== #
    # We must ensure to not fill up empty URLs
    # ===================================================================== #
    Feedback.dataset?.remote_urls.each_with_index { |_, index| index += 1
      unless _.empty?
        e Colours.simp('    ('+index.to_s+') '+_)
        result = _
      end
    }; e
  }
  return result
end
new( this_program = ARGV, run_already = true ) { || ... } click to toggle source
#

initialize

#
# File lib/rbt/cookbooks/display_cookbook_dataset/display_cookbook_dataset.rb, line 36
def initialize(
    this_program = ARGV,
    run_already  = true
  )
  reset # Defined in reset.rb
  set_program(this_program)
  # ======================================================================= #
  # === Handle blocks next
  # ======================================================================= #
  if block_given?
    yielded = yield
    case yielded
    when :do_not_show_md5sum
      set_show_md5sum false
    end
  end
  run if run_already
end

Public Instance Methods

clear()
Alias for: reset
dataset?() click to toggle source
#

dataset?

#
# File lib/rbt/cookbooks/display_cookbook_dataset/display_cookbook_dataset.rb, line 110
def dataset?
  @dataset
end
determine_dataset(i = program?) click to toggle source
#

determine_dataset

#
# File lib/rbt/cookbooks/display_cookbook_dataset/display_cookbook_dataset.rb, line 103
def determine_dataset(i = program?)
  @dataset = action(:SanitizeCookbook, i) { :fast }
end
display_this_option(i = :short_name) click to toggle source
#

display_this_option

#
# File lib/rbt/cookbooks/display_cookbook_dataset/display_cookbook_dataset.rb, line 117
def display_this_option(i = :short_name)
  result = ''.dup
  result << case i
  when :prefix
    'Prefix: '
  when :base_dir
    'Base dir: '
  when :short_name,
       :real_short_name
    'Short name: '
  end
  result = result.ljust(30)
  name_of_the_method = "#{i}?"
  result << sfancy(
    @dataset.send(name_of_the_method.to_sym).to_s
  )
  e "#{result}#{rev}"
end
main_program_entries?() click to toggle source
#

main_program_entries?

Query method over ARRAY_MAIN_PROGRAM_ENTRIES.

#
# File lib/rbt/cookbooks/display_cookbook_dataset/display_cookbook_dataset.rb, line 81
def main_program_entries?
  self.class.main_program_entries?
end
program?() click to toggle source
#

program?

#
# File lib/rbt/cookbooks/display_cookbook_dataset/display_cookbook_dataset.rb, line 96
def program?
  @program
end
reset() click to toggle source
#

reset (reset tag)

#
Calls superclass method RBT::LeanPrototype#reset
# File lib/rbt/cookbooks/display_cookbook_dataset/display_cookbook_dataset.rb, line 139
def reset
  super()
  infer_the_namespace
  # ======================================================================= #
  # === :show_md5sum
  # ======================================================================= #
  @internal_hash[:show_md5sum]    = show_md5sum?
  # ======================================================================= #
  # === :this_program
  # ======================================================================= #
  @internal_hash[:this_program]   = nil # Initialize it.
  # ======================================================================= #
  # === :programs_dir
  # ======================================================================= #
  @internal_hash[:programs_dir]   = programs_directory?
  # ======================================================================= #
  # === :base_dir
  # ======================================================================= #
  @internal_hash[:base_dir]       = source_directory? # Keep a reference to "/home/x/src/" or to any other value.
  # ======================================================================= #
  # === :extra_commands
  # ======================================================================= #
  @internal_hash[:extra_commands] = []
  @internal_hash[:found_result]   = false # We have not yet searched, so this defaults to false.
  @internal_hash[:may_we_exit]    = false
  @internal_hash[:wrap_result]    = true # If true then we will wrap the description of a given program.
  # ======================================================================= #
  # === :replace_plus_with_long_name
  #
  # We can replace '+' with 'plus' depending on whether the constant
  # REPLACE_PLUS_WITH_LONG_NAME tells us to do so. The program gtk+
  # is an example for this - it would become "gtkplus". If you do not
  # want to have '+' as directory names under /Programs/, then you
  # can enable this via that constant.
  # ======================================================================= #
  @internal_hash[:replace_plus_with_long_name] = REPLACE_PLUS_WITH_LONG_NAME
  reset_yaml_dataset
end
Also aliased as: clear
reset_yaml_dataset() click to toggle source
#

reset_yaml_dataset

#
# File lib/rbt/cookbooks/display_cookbook_dataset/display_cookbook_dataset.rb, line 181
def reset_yaml_dataset
  @yaml_dataset = {}
end
run() click to toggle source
#

run

#
# File lib/rbt/cookbooks/display_cookbook_dataset/display_cookbook_dataset.rb, line 188
def run
  determine_dataset
  opne "#{rev}Displaying information about the "\
       "program #{sfancy(@program)}#{rev}."
  dataset = dataset?
  ljust_value = 30
  # ======================================================================= #
  # Display important values.
  # ======================================================================= #
  display_this_option :prefix; ee rev
  e 'Program path: '.ljust(ljust_value)+sfancy(dataset.program_path?.to_s)+rev
  e 'Dependencies on: '.ljust(ljust_value)+sfancy(dataset.deps_on?.join(',').rstrip.to_s)+rev
  display_this_option :base_dir
  display_this_option :short_name
  display_this_option :real_short_name
  e 'Archive size: '.ljust(ljust_value)+sfancy(dataset.archive_size?.to_s)+rev
  if show_md5sum?
    e 'md5sum: '.ljust(ljust_value)+sfancy(dataset.md5sum?.to_s)+rev
  end
end
set_program(i) click to toggle source
#

set_program

#
# File lib/rbt/cookbooks/display_cookbook_dataset/display_cookbook_dataset.rb, line 88
def set_program(i)
  i = i.first if i.is_a? Array
  @program = i
end
set_show_md5sum(i) click to toggle source
#

set_show_md5sum

#
# File lib/rbt/cookbooks/display_cookbook_dataset/display_cookbook_dataset.rb, line 58
def set_show_md5sum(i)
  @internal_hash[:show_md5sum] = i
end
show_md5sum?() click to toggle source
#

show_md5sum?

#
# File lib/rbt/cookbooks/display_cookbook_dataset/display_cookbook_dataset.rb, line 65
def show_md5sum?
  @internal_hash[:show_md5sum]
end
use_only_symbols_for_the_main_hash?() click to toggle source
#

use_only_symbols_for_the_main_hash?

#
# File lib/rbt/cookbooks/display_cookbook_dataset/display_cookbook_dataset.rb, line 72
def use_only_symbols_for_the_main_hash?
  false # Hardcoded for now. We keep only Strings.
end