code: def package_depends_on(self, name_a, name_b):
          
          assert self._context
          if self._dependency_lookup is None:
              self._dependency_graph = self._context.get_dependency_graph()
              self._dependency_lookup = accessibility(self._dependency_graph)
  
          downstream = self._dependency_lookup.get(name_a, [])
          accessible = (name_b in downstream)
          if accessible:
              neighbours = self._dependency_graph.neighbors(name_a)
              return 2 if name_b in neighbours else 1
          else:
              return 0
docs: Returns dependency information about two packages:
  
              0: A does not depend, directly or indirectly, on B;
              1: A depends indirectly on B;
              2: A depends directly on B.