diff --git a/tools/structured.py b/tools/structured.py deleted file mode 100644 index 950c346..0000000 --- a/tools/structured.py +++ /dev/null @@ -1,51 +0,0 @@ -from io import StringIO -import glob -import collections -import json - -formats = __import__("extract-formats") - - -class Options(object): - output_types = True - output_fields = True - check_alignment = False - - -options = Options() -csv = [] - -output = StringIO() -for i in sorted(glob.glob("../??-*.md")): - with open(i) as f: - formats.main(options, output=output, lines=f.readlines()) - csvstr = output.getvalue().strip() - if csvstr == "": - continue - csv += csvstr.split("\n") - -resmap = collections.OrderedDict() - -currentmsgname = None -currentmsgfields = {} -typenum = None -for line in csv: - parts = line.split(",") - if len(parts) == 2: - if currentmsgname is not None: - resmap[currentmsgname] = collections.OrderedDict( - [("type", typenum), ("payload", currentmsgfields)]) - currentmsgfields = collections.OrderedDict() - currentmsgname = parts[0] - typenum = parts[1] - continue - assert currentmsgname == parts[0], line - assert len(parts) in [4, 5], line - position = parts[1] - length = parts[3] - fieldname = parts[2] - currentmsgfields[fieldname] = {"position": position, "length": length} - if len(parts) == 5: currentmsgfields[fieldname]["feature"] = parts[4] - -if __name__ == "__main__": - print(json.dumps(resmap, indent=True))