MCPcopy Create free account
hub / github.com/ipython/ipython / discover_modules

Method discover_modules

docs/sphinxext/apigen.py:339–383  ·  view source on GitHub ↗

Return module sequence discovered from ``self.package_name`` Parameters ---------- None Returns ------- mods : sequence Sequence of module names within ``self.package_name`` Examples -------- >>> dw = ApiDocWrit

(self)

Source from the content-addressed store, hash-verified

337 return True
338
339 def discover_modules(self):
340 ''' Return module sequence discovered from ``self.package_name``
341
342
343 Parameters
344 ----------
345 None
346
347 Returns
348 -------
349 mods : sequence
350 Sequence of module names within ``self.package_name``
351
352 Examples
353 --------
354 >>> dw = ApiDocWriter('sphinx')
355 >>> mods = dw.discover_modules()
356 >>> 'sphinx.util' in mods
357 True
358 >>> dw.package_skip_patterns.append('\\.util$')
359 >>> 'sphinx.util' in dw.discover_modules()
360 False
361 >>>
362 '''
363 modules = [self.package_name]
364 # raw directory parsing
365 for dirpath, dirnames, filenames in os.walk(self.root_path):
366 # Check directory names for packages
367 root_uri = self._path2uri(os.path.join(self.root_path,
368 dirpath))
369 for dirname in dirnames[:]: # copy list - we modify inplace
370 package_uri = '.'.join((root_uri, dirname))
371 if (self._uri2path(package_uri) and
372 self._survives_exclude(package_uri, 'package')):
373 modules.append(package_uri)
374 else:
375 dirnames.remove(dirname)
376 # Check filenames for modules
377 for filename in filenames:
378 module_name = filename[:-3]
379 module_uri = '.'.join((root_uri, module_name))
380 if (self._uri2path(module_uri) and
381 self._survives_exclude(module_uri, 'module')):
382 modules.append(module_uri)
383 return sorted(modules)
384
385 def write_modules_api(self, modules,outdir):
386 # write the list

Callers 1

write_api_docsMethod · 0.95

Calls 4

_path2uriMethod · 0.95
_uri2pathMethod · 0.95
_survives_excludeMethod · 0.95
removeMethod · 0.45

Tested by

no test coverage detected