File tree Expand file tree Collapse file tree 1 file changed +8
-22
lines changed
Expand file tree Collapse file tree 1 file changed +8
-22
lines changed Original file line number Diff line number Diff line change 88Parses SystemVerilog modules to extract information about parameters and ports.
99"""
1010
11- import argparse
12- import json
1311import re
1412
15- from hdltools .hdl_sanitize import HdlSanitize
16-
17-
18- class ModParse :
13+ class ModParser :
1914 """Extract information about parameters and ports from modules."""
2015
21- def __init__ (self , fpath ):
16+ def __init__ (self , code = '' ):
2217 self .modules = {}
23- hdl = HdlSanitize (fpath )
24- self .code = hdl .get_code ()
25- self ._parse ()
18+ self .code = code
19+
20+ def set_code (self , code ):
21+ """Sets the HDL code."""
22+ self .code = code
2623
27- def _parse (self ):
24+ def parse (self ):
2825 pattern = (
2926 r'module\s+'
3027 r'(\w+)\s*' # name
@@ -105,14 +102,3 @@ def get_module(self, module=None):
105102 if module in self .modules :
106103 return self .modules [module ]
107104 return None
108-
109- def __str__ (self ):
110- return json .dumps (self .modules , indent = 2 )
111-
112-
113- if __name__ == "__main__" :
114- parser = argparse .ArgumentParser ()
115- parser .add_argument ('svfile' )
116- args = parser .parse_args ()
117- modules = ModParse (args .svfile )
118- print (modules )
You can’t perform that action at this time.
0 commit comments