1 | from __future__ import with_statement |
---|
2 | import os.path |
---|
3 | |
---|
4 | MODULE_TEMPLATE=""".. Autogenerated by genmods.py |
---|
5 | |
---|
6 | ****************************************************************************** |
---|
7 | %(name)s |
---|
8 | ****************************************************************************** |
---|
9 | |
---|
10 | :mod:`%(package)s.%(module)s` |
---|
11 | ============================================================================== |
---|
12 | |
---|
13 | .. automodule:: %(package)s.%(module)s |
---|
14 | :members: |
---|
15 | :undoc-members: |
---|
16 | :inherited-members: |
---|
17 | :show-inheritance: |
---|
18 | |
---|
19 | """ |
---|
20 | |
---|
21 | INDEX_TEMPLATE=""".. Autogenerated by genmods.py |
---|
22 | |
---|
23 | .. _api-index: |
---|
24 | |
---|
25 | ############################################################################## |
---|
26 | %(package_name)s |
---|
27 | ############################################################################## |
---|
28 | |
---|
29 | .. only:: html |
---|
30 | |
---|
31 | :Release: |version| |
---|
32 | :Date: |today| |
---|
33 | |
---|
34 | .. toctree:: |
---|
35 | |
---|
36 | %(rsts)s |
---|
37 | """ |
---|
38 | |
---|
39 | |
---|
40 | def genfiles(package, package_name, modules, dir='api'): |
---|
41 | |
---|
42 | if not os.path.exists(dir): |
---|
43 | os.makedirs(dir) |
---|
44 | |
---|
45 | for module,name in modules: |
---|
46 | with open(os.path.join(dir,module+'.rst'), 'w') as f: |
---|
47 | f.write(MODULE_TEMPLATE%locals()) |
---|
48 | |
---|
49 | rsts = "\n ".join(module+'.rst' for module,name in modules) |
---|
50 | with open(os.path.join(dir,'index.rst'),'w') as f: |
---|
51 | f.write(INDEX_TEMPLATE%locals()) |
---|
52 | |
---|
53 | modules = [] |
---|
54 | path = os.path.dirname(os.path.join('..', '..', 'sansdataloader')) |
---|
55 | path = os.path.join(path, 'src', 'sans','dataloader') |
---|
56 | list = os.listdir(path) |
---|
57 | for item in list: |
---|
58 | if os.path.isfile(os.path.join(path, item)): |
---|
59 | toks = os.path.splitext(os.path.basename(item)) |
---|
60 | if toks[1]=='.py' and toks[0] not in ["__init__", "setup"]: |
---|
61 | exec "module = ('%s', '%s')"%(toks[0], toks[0]) |
---|
62 | modules.append(module) |
---|
63 | |
---|
64 | package='sans.dataloader' |
---|
65 | package_name='Reference' |
---|
66 | |
---|
67 | if __name__ == "__main__": |
---|
68 | genfiles(package, package_name, modules, dir='api') |
---|
69 | modules = [] |
---|
70 | path = os.path.abspath(os.path.dirname('../../src/sans/dataloader/readers/')) |
---|
71 | list = os.listdir(path) |
---|
72 | for item in list: |
---|
73 | toks = os.path.splitext(os.path.basename(item)) |
---|
74 | if toks[1]=='.py' and toks[0] not in ["__init__", "setup"]: |
---|
75 | exec "module = ('%s', '%s')"%(toks[0], toks[0]) |
---|
76 | modules.append(module) |
---|
77 | package='sans.dataloader.readers' |
---|
78 | package_name='Readers' |
---|
79 | genfiles(package, package_name, modules, dir='api/readers') |
---|
80 | print "Sphinx: generate .rst files complete..." |
---|