Module: TkPackage (Ruby 2.3.4)

In Files

  • tk/lib/tk/package.rb

Class/Module Index [+]

Quicksearch

TkPackage

Constants

TkCommandNames

Public Instance Methods

add_path(path)
 
               # File tk/lib/tk/package.rb, line 13
def add_path(path)
  Tk::AUTO_PATH.value = Tk::AUTO_PATH.to_a << path
end
            
forget(package)
 
               # File tk/lib/tk/package.rb, line 17
def forget(package)
  tk_call('package', 'forget', package)
  nil
end
            
if_needed(pkg, ver, *arg, &b)
 
               # File tk/lib/tk/package.rb, line 22
def if_needed(pkg, ver, *arg, &b)
  size = arg.size

  if size==0 && !b
    # proc info
    procedure(tk_call('package', 'ifneeded', pkg, ver))

  elsif size==0 && b
    # set proc
    cmd = proc(&b)
    tk_call('package', 'ifneeded', pkg, ver, cmd)
    cmd

  elsif size==1 && !b
    # set proc
    cmd = arg[0]
    if cmd
      tk_call('package', 'ifneeded', pkg, ver, cmd)
      cmd
    else
      # remove proc
      tk_call('package', 'ifneeded', pkg, ver, '')
      nil
    end

  else
    fail ArgumentError, 'too many arguments'
  end
end
            
names()
 
               # File tk/lib/tk/package.rb, line 52
def names
  tk_split_simplelist(tk_call('package', 'names'))
end
            
prefer(setting = None)
 
               # File tk/lib/tk/package.rb, line 141
def prefer(setting = None)
  tk_call('package', 'prefer', setting)
end
            
present(package, version=None)
 
               # File tk/lib/tk/package.rb, line 67
def present(package, version=None)
  begin
    tk_call('package', 'present', package, version)
  rescue => e
    fail e.class, 'TkPackage ' << e.message
  end
end
            
present_exact(package, version)
 
               # File tk/lib/tk/package.rb, line 75
def present_exact(package, version)
  begin
    tk_call('package', 'present', '-exact', package, version)
  rescue => e
    fail e.class, 'TkPackage ' << e.message
  end
end
            
provide(package, version=nil)
 
               # File tk/lib/tk/package.rb, line 56
def provide(package, version=nil)
  if version
    tk_call('package', 'provide', package, version)
  end
  if (ret = tk_call('package', 'provide', package)) == ''
    nil
  else
    ret
  end
end
            
require(package, version=None)
 
               # File tk/lib/tk/package.rb, line 83
def require(package, version=None)
  begin
    tk_call('package', 'require', package, version)
  rescue => e
    fail e.class, 'TkPackage ' << e.message
  end
end
            
require_exact(package, version)
 
               # File tk/lib/tk/package.rb, line 91
def require_exact(package, version)
  begin
    tk_call('package', 'require', '-exact', package, version)
  rescue => e
    fail e.class, 'TkPackage ' << e.message
  end
end
            
unknown_proc(*arg, &b)
 
               # File tk/lib/tk/package.rb, line 99
def unknown_proc(*arg, &b)
  size = arg.size

  if size==0 && !b
    # proc info
    procedure(tk_call('package', 'unknown'))

  elsif size==0 && b
    # set proc
    cmd = proc(&b)
    tk_call('package', 'unknown', cmd)
    cmd

  elsif size==1 && !b
    # set proc
    cmd = arg[0]
    if cmd
      tk_call('package', 'unknown', cmd)
      cmd
    else
      # remove proc
      tk_call('package', 'unknown', '')
      nil
    end

  else
    fail ArgumentError, 'too many arguments'
  end
end
            
vcompare(version1, version2)
 
               # File tk/lib/tk/package.rb, line 133
def vcompare(version1, version2)
  number(tk_call('package', 'vcompare', version1, version2))
end
            
versions(package)
 
               # File tk/lib/tk/package.rb, line 129
def versions(package)
  tk_split_simplelist(tk_call('package', 'versions', package))
end
            
vsatisfies(version1, version2)
 
               # File tk/lib/tk/package.rb, line 137
def vsatisfies(version1, version2)
  bool(tk_call('package', 'vsatisfies', version1, version2))
end