Skip to content

Commit f01477b

Browse files
sneaxiyshanyi15
authored andcommitted
split layers,test=develop (#889)
1 parent 010917b commit f01477b

File tree

14 files changed

+2374
-2301
lines changed

14 files changed

+2374
-2301
lines changed

doc/fluid/api/data/image.rst

Lines changed: 0 additions & 5 deletions
This file was deleted.

doc/fluid/api/gen_doc.py

Lines changed: 35 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -24,32 +24,55 @@ def parse_arg():
2424
parser = argparse.ArgumentParser()
2525
parser.add_argument('--submodules', nargs="*")
2626
parser.add_argument(
27-
'module', type=str, help='Generate the documentation of which module')
27+
'--module', type=str, help='Generate the documentation of which module')
28+
parser.add_argument(
29+
'--module_prefix', type=str, help='Generate the prefix of module')
2830
return parser.parse_args()
2931

3032

3133
class DocGenerator(object):
32-
def __init__(self, module_name=None, stream=sys.stdout):
34+
def __init__(self, module_name=None, module_prefix=None, stream=sys.stdout):
3335
if module_name == "":
3436
module_name = None
37+
38+
if module_prefix == "":
39+
module_prefix = None
40+
3541
self.stream = stream
3642
if module_name is None:
3743
self.module_name = "fluid"
3844
else:
3945
self.module_name = "fluid." + module_name
4046
if module_name is None:
4147
self.module = fluid
48+
else:
49+
self.module = fluid
50+
for each_module_name in module_name.split('.'):
51+
if not hasattr(self.module, each_module_name):
52+
raise ValueError("Cannot find fluid.{0}".format(module_name))
53+
else:
54+
self.module = getattr(self.module, each_module_name)
55+
56+
if module_prefix is None:
57+
self.module_prefix = self.module_name
4258
else:
43-
if not hasattr(fluid, module_name):
44-
raise ValueError("Cannot find fluid.{0}".format(module_name))
45-
else:
46-
self.module = getattr(fluid, module_name)
59+
self.module_prefix = "fluid." + module_prefix
60+
4761
self.stream.write('''.. THIS FILE IS GENERATED BY `gen_doc.{py|sh}`
4862
!DO NOT EDIT THIS FILE MANUALLY!
4963
50-
''')
64+
''')
5165

52-
self._print_header_(self.module_name, dot='=', is_title=True)
66+
header_name = self.module_name
67+
if module_prefix is not None:
68+
prefix_len = len(self.module_prefix)
69+
assert self.module_prefix == self.module_name[0:prefix_len], \
70+
"module_prefix must be prefix of module_name"
71+
diff_name = self.module_name[prefix_len+1:]
72+
if diff_name != "":
73+
header_name = diff_name
74+
75+
self._print_header_(header_name, dot='=', is_title=True)
5376

5477
def print_submodule(self, submodule_name):
5578
submodule = getattr(self.module, submodule_name)
@@ -85,15 +108,15 @@ def print_class(self, name):
85108
:members:
86109
:noindex:
87110
88-
'''.format(self.module_name, name))
111+
'''.format(self.module_prefix, name))
89112

90113
def print_method(self, name):
91114
self._print_ref_(name)
92115
self._print_header_(name, dot='-', is_title=False)
93116
self.stream.write('''.. autofunction:: paddle.{0}.{1}
94117
:noindex:
95118
96-
'''.format(self.module_name, name))
119+
'''.format(self.module_prefix, name))
97120

98121
def _print_header_(self, name, dot, is_title):
99122
dot_line = dot * len(name)
@@ -108,12 +131,12 @@ def _print_header_(self, name, dot, is_title):
108131

109132
def _print_ref_(self, name):
110133
self.stream.write(".. _api_{0}_{1}:\n\n".format("_".join(
111-
self.module_name.split(".")), name))
134+
self.module_prefix.split(".")), name))
112135

113136

114137
def main():
115138
args = parse_arg()
116-
gen = DocGenerator(args.module)
139+
gen = DocGenerator(args.module, args.module_prefix)
117140
if args.submodules is None:
118141
gen.print_current_module()
119142
else:

doc/fluid/api/gen_doc.sh

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,17 @@
11
#!/bin/bash
2-
python gen_doc.py layers --submodules control_flow device io nn ops tensor learning_rate_scheduler detection metric_op > layers.rst
2+
3+
mkdir -p layers
4+
5+
for module in control_flow io nn ops tensor learning_rate_scheduler detection metric_op
6+
do
7+
python gen_doc.py --module layers.${module} --module_prefix layers > layers/${module}.rst
8+
done
39

410
for module in data_feeder dataset clip metrics executor initializer io nets optimizer profiler regularizer transpiler recordio_writer backward average profiler unique_name
511
do
6-
python gen_doc.py ${module} > ${module}.rst
12+
python gen_doc.py --module ${module} --module_prefix ${module} > ${module}.rst
713
done
814

9-
python gen_doc.py "" > fluid.rst
15+
python gen_doc.py --module "" --module_prefix "" > fluid.rst
16+
17+
python gen_index.py

doc/fluid/api/gen_index.py

Lines changed: 20 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,31 @@
22
import exceptions
33
import glob
44
import os
5+
56
if __name__ == '__main__':
6-
7-
file_object = open('index_en.rst', 'w')
8-
file_object.write('''=============
7+
with open('index_en.rst', 'w') as file_object:
8+
file_object = open('index_en.rst', 'w')
9+
file_object.write('''=============
910
API Reference
1011
=============
1112
1213
.. toctree::
1314
:maxdepth: 1
1415
1516
''')
16-
file_object.write(' ../api_guides/index_en.rst'+'\n')
17-
file_object.write(' fluid.rst'+'\n')
18-
for file_name in sorted(glob.glob("*.rst")):
19-
if file_name != ('index_en.rst' and 'fluid.rst'):
20-
file_object.write(' '+file_name + "\n")
21-
file_object.close( )
17+
file_object.write(' ../api_guides/index_en.rst'+'\n')
18+
file_object.write(' fluid.rst'+'\n')
19+
20+
target_dirs = ['.', 'data']
21+
22+
file_names = []
23+
for target_dir in target_dirs:
24+
if target_dir == '.':
25+
pattern = '*.rst'
26+
else:
27+
pattern = target_dir + '/*.rst'
28+
file_names.extend(glob.glob(pattern))
29+
30+
for file_name in sorted(file_names):
31+
if file_name not in ['index_en.rst', 'fluid.rst']:
32+
file_object.write(' '+file_name + "\n")

doc/fluid/api/index_en.rst

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@ API Reference
1010
average.rst
1111
backward.rst
1212
clip.rst
13-
data.rst
13+
data/data_reader.rst
14+
data/dataset.rst
1415
data_feeder.rst
1516
dataset.rst
1617
executor.rst
@@ -25,6 +26,3 @@ API Reference
2526
regularizer.rst
2627
transpiler.rst
2728
unique_name.rst
28-
data/dataset.rst
29-
data/data_reader.rst
30-

0 commit comments

Comments
 (0)