aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPatrick Lehmann <Patrick.Lehmann@plc2.de>2021-01-05 17:05:01 +0100
committertgingold <tgingold@users.noreply.github.com>2021-01-05 18:50:44 +0100
commit156c2fe69ef9a08084196721cc13df8ea2a694e6 (patch)
tree412e2d045423c675f91841900661ee5d79527b8a
parentd62ac2d4973b6f6f34ab804c91ab8be5ddb2f86f (diff)
downloadghdl-156c2fe69ef9a08084196721cc13df8ea2a694e6.tar.gz
ghdl-156c2fe69ef9a08084196721cc13df8ea2a694e6.tar.bz2
ghdl-156c2fe69ef9a08084196721cc13df8ea2a694e6.zip
Also auto document options from 'pnodes' and 'pnodespy'.
-rw-r--r--doc/AutoProgram.py10
-rw-r--r--doc/pyGHDL/index.rst14
-rwxr-xr-xscripts/pnodes.py13
-rwxr-xr-xscripts/pnodespy.py12
4 files changed, 35 insertions, 14 deletions
diff --git a/doc/AutoProgram.py b/doc/AutoProgram.py
index 4b13e60e6..86d2f02b1 100644
--- a/doc/AutoProgram.py
+++ b/doc/AutoProgram.py
@@ -29,11 +29,11 @@ from sys import path as sys_path
sys_path.append("..")
-from pyGHDL.cli.lsp import _generateCLIParser as lsp_parserGenerator
-# from scripts.pnodes import _generateCLIParser as pnodes_parserGenerator
-# from scripts.pnodespy import _generateCLIParser as pnodespy_parserGenerator
+from pyGHDL.cli.lsp import _generateCLIParser as lsp_parserGenerator
+from scripts.pnodes import _generateCLIParser as pnodes_parserGenerator
+from scripts.pnodespy import _generateCLIParser as pnodespy_parserGenerator
# entry point
lsp_parser = lsp_parserGenerator()
-# pnodes_parser = pnodes_parserGenerator()
-# pnodespy_parser = pnodespy_parserGenerator()
+pnodes_parser = pnodes_parserGenerator()
+pnodespy_parser = pnodespy_parserGenerator()
diff --git a/doc/pyGHDL/index.rst b/doc/pyGHDL/index.rst
index e22822ce6..549cc8c42 100644
--- a/doc/pyGHDL/index.rst
+++ b/doc/pyGHDL/index.rst
@@ -72,8 +72,14 @@ search path.
.. _CMDREF-pnodes:
-.. #
- autoprogram:: AutoProgram:pnodes_parser
- :prog: ghdl-ls
+.. autoprogram:: AutoProgram:pnodes_parser
+ :prog: pnodes
:groups:
- :label: CmdRef:ghdlls:
+ :label: CmdRef:pnodes:
+
+.. _CMDREF-pnodespy:
+
+.. autoprogram:: AutoProgram:pnodespy_parser
+ :prog: pnodespy
+ :groups:
+ :label: CmdRef:pnodespy:
diff --git a/scripts/pnodes.py b/scripts/pnodes.py
index 99fc14809..6d38f63ae 100755
--- a/scripts/pnodes.py
+++ b/scripts/pnodes.py
@@ -2,7 +2,7 @@
import re
import sys
-import argparse
+from argparse import ArgumentParser
field_file = "nodes.ads"
kind_file = "iirs.ads"
@@ -883,8 +883,9 @@ actions = {
}
-def main():
- parser = argparse.ArgumentParser(description="Meta-grammar processor")
+def _generateCLIParser() -> ArgumentParser:
+ """"""
+ parser = ArgumentParser(description="Meta-grammar processor")
parser.add_argument("action", choices=list(actions.keys()), default="disp-nodes")
parser.add_argument(
"--field-file",
@@ -941,6 +942,12 @@ def main():
help="keep field order of nodes",
)
parser.set_defaults(flag_keep_order=False)
+
+ return parser
+
+
+def main():
+ parser = _generateCLIParser()
args = parser.parse_args()
# At some point, it would be simpler to create a class...
diff --git a/scripts/pnodespy.py b/scripts/pnodespy.py
index 2e3d72e6a..7713bb1d6 100755
--- a/scripts/pnodespy.py
+++ b/scripts/pnodespy.py
@@ -4,11 +4,15 @@
from __future__ import print_function
+import re
import sys
from textwrap import dedent
-import pnodes
-import re
+try:
+ import scripts.pnodes as pnodes
+except:
+ import pnodes
+
libname = "libghdl"
@@ -274,4 +278,8 @@ pnodes.actions.update(
)
+def _generateCLIParser():
+ return pnodes._generateCLIParser()
+
+
pnodes.main()