eric6/eric6_api.py

changeset 7163
00166038bba5
parent 6949
a5255f1ba3f0
child 7192
a22eee00b052
equal deleted inserted replaced
7162:f00b38c540ca 7163:00166038bba5
69 print(" --exclude-file=pattern") 69 print(" --exclude-file=pattern")
70 print(" Specify a filename pattern of files to be excluded.") 70 print(" Specify a filename pattern of files to be excluded.")
71 print(" This option may be repeated multiple times.") 71 print(" This option may be repeated multiple times.")
72 print(" -h or --help") 72 print(" -h or --help")
73 print(" Show this help and exit.") 73 print(" Show this help and exit.")
74 print(" -i or --ignore")
75 print(" Ignore the set of builtin modules")
74 print(" -l language or --language=language") 76 print(" -l language or --language=language")
75 print(" Generate an API file for the given programming language.") 77 print(" Generate an API file for the given programming language.")
76 print(" Supported programming languages are:") 78 print(" Supported programming languages are:")
77 for lang in sorted( 79 for lang in sorted(
78 DocumentationTools.supportedExtensionsDictForApis.keys()): 80 DocumentationTools.supportedExtensionsDictForApis.keys()):
126 128
127 import getopt 129 import getopt
128 130
129 try: 131 try:
130 opts, args = getopt.getopt( 132 opts, args = getopt.getopt(
131 sys.argv[1:], "b:e:hl:o:pRrt:Vx:", 133 sys.argv[1:], "b:e:hil:o:pRrt:Vx:",
132 ["base=", "eol=", "exclude=", "exclude-file=", "extension=", 134 ["base=", "eol=", "exclude=", "exclude-file=", "extension=",
133 "help", "language=", "output=", "private", "recursive", 135 "help", "ignore", "language=", "output=", "private", "recursive",
134 "version", ]) 136 "version", ])
135 except getopt.error: 137 except getopt.error:
136 usage() 138 usage()
137 139
138 excludeDirs = [".svn", ".hg", ".git", ".ropeproject", ".eric6project", 140 excludeDirs = [".svn", ".hg", ".git", ".ropeproject", ".eric6project",
143 basePackage = "" 145 basePackage = ""
144 includePrivate = False 146 includePrivate = False
145 progLanguages = [] 147 progLanguages = []
146 extensions = [] 148 extensions = []
147 newline = None 149 newline = None
150 ignoreBuiltinModules = False
148 151
149 for k, v in opts: 152 for k, v in opts:
150 if k in ["-o", "--output"]: 153 if k in ["-o", "--output"]:
151 outputFileName = v 154 outputFileName = v
152 elif k in ["-R", "-r", "--recursive"]: 155 elif k in ["-R", "-r", "--recursive"]:
155 excludeDirs.append(v) 158 excludeDirs.append(v)
156 elif k == "--exclude-file": 159 elif k == "--exclude-file":
157 excludePatterns.append(v) 160 excludePatterns.append(v)
158 elif k in ["-h", "--help"]: 161 elif k in ["-h", "--help"]:
159 usage() 162 usage()
163 elif k in ["-i", "--ignore"]:
164 ignoreBuiltinModules = True
160 elif k in ["-V", "--version"]: 165 elif k in ["-V", "--version"]:
161 version() 166 version()
162 elif k in ["-t", "--extension"]: 167 elif k in ["-t", "--extension"]:
163 if not v.startswith("."): 168 if not v.startswith("."):
164 v = ".{0}".format(v) 169 v = ".{0}".format(v)
270 continue 275 continue
271 276
272 try: 277 try:
273 module = Utilities.ModuleParser.readModule( 278 module = Utilities.ModuleParser.readModule(
274 file, 279 file,
275 basename=basename, inpackage=inpackage) 280 basename=basename, inpackage=inpackage,
281 ignoreBuiltinModules=ignoreBuiltinModules)
276 apiGenerator = APIGenerator(module) 282 apiGenerator = APIGenerator(module)
277 api = apiGenerator.genAPI(True, basePackage, 283 api = apiGenerator.genAPI(True, basePackage,
278 includePrivate) 284 includePrivate)
279 bases = apiGenerator.genBases(includePrivate) 285 bases = apiGenerator.genBases(includePrivate)
280 except IOError as v: 286 except IOError as v:

eric ide

mercurial