from __future__ import with_statement import os.path MODULE_TEMPLATE=""".. Autogenerated by genmods.py ****************************************************************************** %(name)s ****************************************************************************** :mod:`%(package)s.%(module)s` ============================================================================== .. automodule:: %(package)s.%(module)s :members: :undoc-members: :inherited-members: :show-inheritance: :special-members: :private-members: """ INDEX_TEMPLATE=""".. Autogenerated by genmods.py .. _api-index: ############################################################################## %(package_name)s ############################################################################## .. only:: html :Release: |version| :Date: |today| .. toctree:: %(rsts)s """ def genfiles(package, package_name, modules, dir='api'): if not os.path.exists(dir): os.makedirs(dir) for module,name in modules: with open(os.path.join(dir,module+'.rst'), 'w') as f: f.write(MODULE_TEMPLATE%locals()) rsts = "\n ".join(module+'.rst' for module,name in modules) with open(os.path.join(dir,'index.rst'),'w') as f: f.write(INDEX_TEMPLATE%locals()) modules = [] path = os.path.dirname(os.path.join('..', '..', 'sansdataloader')) path = os.path.join(path, 'src', 'sans','dataloader') list = os.listdir(path) for item in list: if os.path.isfile(os.path.join(path, item)): toks = os.path.splitext(os.path.basename(item)) if toks[1]=='.py' and toks[0] not in ["__init__", "setup"]: exec "module = ('%s', '%s')"%(toks[0], toks[0]) modules.append(module) package='sans.dataloader' package_name='Reference' if __name__ == "__main__": genfiles(package, package_name, modules, dir='api') modules = [] path = os.path.abspath(os.path.dirname('../../src/sans/dataloader/readers/')) list = os.listdir(path) for item in list: toks = os.path.splitext(os.path.basename(item)) if toks[1]=='.py' and toks[0] not in ["__init__", "setup"]: exec "module = ('%s', '%s')"%(toks[0], toks[0]) modules.append(module) package='sans.dataloader.readers' package_name='Readers' genfiles(package, package_name, modules, dir='api/readers') print "Sphinx: generate .rst files complete..."