code: def print_info(self, obj=None, buf=sys.stdout):
          
          if not obj:
              self._print_info(buf)
              return True
  
          b = False
          for fn in (self._print_tool_info,
                     self._print_package_info,
                     self._print_suite_info,
                     self._print_context_info):
              b_ = fn(obj, buf, b)
              b |= b_
              if b_:
                  print >> buf, ''
  
          if not b:
              print >> buf, "Rez does not know what '%s' is" % obj
          return b
docs: Print a status message about the given object.
  
          If an object is not provided, status info is shown about the current
          environment - what the active context is if any, and what suites are
          visible.
  
          Args:
              obj (str): String which may be one of the following:
                  - A tool name;
                  - A package name, possibly versioned;
                  - A context filepath;
                  - A suite filepath;
                  - The name of a context in a visible suite.