class RBT::Cookbooks::FindHeaders

Public Class Methods

new( i = nil, run_already = true ) click to toggle source
#

initialize

#
# File lib/rbt/cookbooks/find_headers.rb, line 32
def initialize(
    i           = nil,
    run_already = true
  )
  reset
  set_input(i)
  run if run_already
end

Public Instance Methods

do_find_headers() click to toggle source
#

do_find_headers

#
# File lib/rbt/cookbooks/find_headers.rb, line 96
def do_find_headers
  headers = obtain_headers
  if headers.is_a? Array # Convert the Array into a String here.
    headers = headers.join(',').strip
  end
  headers.delete!(' ') if headers
  if headers.to_s.empty?
    opne "No headers were found for #{steelblue(@input)}."
  else
    report_that_we_have_found_these_headers(headers)
  end
end
input?() click to toggle source
#

input?

#
# File lib/rbt/cookbooks/find_headers.rb, line 61
def input?
  @input
end
obtain_headers(i = input?) click to toggle source
#

obtain_headers

#
# File lib/rbt/cookbooks/find_headers.rb, line 68
def obtain_headers(i = input?)
  headers = RBT::Cookbooks::SanitizeCookbook.new(i) { :fast }.headers?
  return headers
end
report_that_we_have_found_these_headers(headers) click to toggle source
#

report_that_we_have_found_these_headers

We do assume here that the input argument to this method is a String which will contain ‘,’ characters.

#
# File lib/rbt/cookbooks/find_headers.rb, line 79
def report_that_we_have_found_these_headers(headers)
  if headers.include? ','
    splitted = headers.split(',')
  else
    splitted = (headers+',').split(',')
  end
  opne 'The following '+slateblue(splitted.size.to_s)+
       ' header files were found for the '\
       'program `'+sfancy(input?)+'`.'
  splitted.each {|the_header|
    e "  - #{the_header}"
  }
end
reset() click to toggle source
#

reset

#
Calls superclass method RBT::Base#reset
# File lib/rbt/cookbooks/find_headers.rb, line 44
def reset
  super()
  infer_the_namespace
end
run() click to toggle source
#

run (run tag)

#
# File lib/rbt/cookbooks/find_headers.rb, line 112
def run
  do_find_headers
end
set_input(i = '') click to toggle source
#

set_input

#
# File lib/rbt/cookbooks/find_headers.rb, line 52
def set_input(i = '')
  i = i.first if i.is_a? Array
  i = i.to_s.dup if i
  @input = i
end