def _showAsList(package, reverse, missingOnly):
    """
        Direcyly print list of [reverse] dependencies onto console.
    """
    Any.requireIsInstance(package, BSTPackage.BSTPackage)
    Any.requireIsBool(reverse)

    data = package.revDepSet if reverse else package.depSet
    Any.requireIsSet(data)

    packageURLs = list(data)
    packageURLs.sort()

    for packageURL in packageURLs:
        Any.requireIsTextNonEmpty(packageURL)

        if missingOnly:
            try:
                if not ProjectProperties.isInstalled(packageURL):
                    print(packageURL)

            except EnvironmentError:
                # unknown, treat as "not installed"
                print(packageURL)

        else:
            print(packageURL)
    def _getInstallStatus(self, package, sitPath):

        try:
            installed = ProjectProperties.isInstalled(package, sitPath)
        except ValueError:
            installed = False

        if installed:

            if package.startswith('sit://'):
                msg = '%s: exists' % \
                      os.path.join( sitPath, SIT.strip( package) )
            else:
                msg = '%s: installed on this machine' % \
                      package.replace( 'deb://', '' )

        else:

            if package.startswith('sit://'):
                msg = '%s: no such file or directory' % \
                      os.path.join( sitPath, SIT.strip( package ) )
            else:
                msg = '%s: not installed on this machine' % \
                      package.replace( 'deb://', '' )

        return installed, msg
installStatus = {}
installStatusLocal = {}
installStatusProxy = {}
installStatusGlobal = {}

logging.debug('retrieving install status of [reverse-]dependencies...')

for packageURL in fullSet:
    protocol, remainder = ProjectProperties.splitURL(packageURL)

    # _installStatus is the generic form, holding the installStatus
    # for Debian packages (= locally) and SIT packages (= in proxy)
    # since those are the effective locations for compiling sources

    if protocol == 'deb':
        status = ProjectProperties.isInstalled(packageURL)
        installStatus[packageURL] = status
        installStatusLocal[packageURL] = status
        logging.debug('installed locally : %s = %s', packageURL, status)

    else:
        status = ProjectProperties.isInstalled(packageURL, sitProxyPath)
        installStatus[packageURL] = status
        installStatusProxy[packageURL] = status
        logging.debug('installed in proxy: %s = %s', packageURL, status)

        status = ProjectProperties.isInstalled(packageURL, sitRootPath)
        installStatusGlobal[packageURL] = status
        logging.debug('installed globally: %s = %s', packageURL, status)

# also retrieve info about current package