class NativePackageInstaller::ExecutableFinder

Public Class Methods

exist?(basename) click to toggle source
# File lib/native-package-installer/executable-finder.rb, line 25
def exist?(basename)
  new(basename).exist?
end
find(basename) click to toggle source
# File lib/native-package-installer/executable-finder.rb, line 21
def find(basename)
  new(basename).find
end
new(basename) click to toggle source
# File lib/native-package-installer/executable-finder.rb, line 30
def initialize(basename)
  @basename = basename
  @appended_paths = []
end

Public Instance Methods

append_path(path) click to toggle source
# File lib/native-package-installer/executable-finder.rb, line 54
def append_path(path)
  @appended_paths << path
end
exist?() click to toggle source
# File lib/native-package-installer/executable-finder.rb, line 50
def exist?
  not find.nil?
end
find() click to toggle source
# File lib/native-package-installer/executable-finder.rb, line 35
def find
  extensions = detect_extensions
  paths.each do |path|
    executable_file = File.join(path, @basename)
    return executable_file if executable?(executable_file)
    extensions.each do |extension|
      executable_file_with_extension = executable_file + extension
      if executable?(executable_file_with_extension)
        return executable_file_with_extension
      end
    end
  end
  nil
end