code: def _mod_info(modname, toskip=[], onlylocals=True):
      
  
      hascls = hasfunc = False
  
      for localnm, fqnm, obj in zip(*find_mod_objs(modname, onlylocals=onlylocals)):
          if localnm not in toskip:
              hascls = hascls or inspect.isclass(obj)
              hasfunc = hasfunc or inspect.isroutine(obj)
              if hascls and hasfunc:
                  break
  
      # find_mod_objs has already imported modname
      # TODO: There is probably a cleaner way to do this, though this is pretty
      # reliable for all Python versions for most cases that we care about.
      pkg = sys.modules[modname]
      ispkg = (hasattr(pkg, '__file__') and isinstance(pkg.__file__, str) and
               os.path.split(pkg.__file__)[1].startswith('__init__.py'))
  
      return ispkg, hascls, hasfunc
docs: Determines if a module is a module or a package and whether or not
      it has classes or functions.