diff options
Diffstat (limited to 'src/tools/vppapigen/vppapigen_json.py')
-rw-r--r-- | src/tools/vppapigen/vppapigen_json.py | 59 |
1 files changed, 29 insertions, 30 deletions
diff --git a/src/tools/vppapigen/vppapigen_json.py b/src/tools/vppapigen/vppapigen_json.py index 5fa839f9854..695b8cc7aa2 100644 --- a/src/tools/vppapigen/vppapigen_json.py +++ b/src/tools/vppapigen/vppapigen_json.py @@ -14,7 +14,7 @@ def walk_imports(s): def walk_counters(s, pathset): r = [] for e in s: - r2 = {'name': e.name, 'elements': e.block} + r2 = {"name": e.name, "elements": e.block} r.append(r2) r3 = [] @@ -31,7 +31,7 @@ def walk_enums(s): d.append(e.name) for b in e.block: d.append(b) - d.append({'enumtype': e.enumtype}) + d.append({"enumtype": e.enumtype}) r.append(d) return r @@ -39,13 +39,13 @@ def walk_enums(s): def walk_services(s): r = {} for e in s: - d = {'reply': e.reply} + d = {"reply": e.reply} if e.stream: - d['stream'] = True + d["stream"] = True if e.stream_message: - d['stream_msg'] = e.stream_message + d["stream_msg"] = e.stream_message if e.events: - d['events'] = e.events + d["events"] = e.events r[e.caller] = d return r @@ -56,28 +56,27 @@ def walk_defs(s, is_message=False): d = [] d.append(t.name) for b in t.block: - if b.type == 'Option': + if b.type == "Option": continue - if b.type == 'Field': + if b.type == "Field": if b.limit: d.append([b.fieldtype, b.fieldname, b.limit]) else: d.append([b.fieldtype, b.fieldname]) - elif b.type == 'Array': + elif b.type == "Array": if b.lengthfield: - d.append([b.fieldtype, b.fieldname, - b.length, b.lengthfield]) + d.append([b.fieldtype, b.fieldname, b.length, b.lengthfield]) else: d.append([b.fieldtype, b.fieldname, b.length]) - elif b.type == 'Union': + elif b.type == "Union": pass else: raise ValueError("Error in processing array type %s" % b) if is_message and t.crc: c = {} - c['crc'] = "{0:#0{1}x}".format(t.crc, 10) - c['options'] = t.options + c["crc"] = "{0:#0{1}x}".format(t.crc, 10) + c["options"] = t.options d.append(c) r.append(d) @@ -90,19 +89,19 @@ def walk_defs(s, is_message=False): def run(args, filename, s): j = {} - j['types'] = (walk_defs([o for o in s['types'] - if o.__class__.__name__ == 'Typedef'])) - j['messages'] = walk_defs(s['Define'], True) - j['unions'] = (walk_defs([o for o in s['types'] - if o.__class__.__name__ == 'Union'])) - j['enums'] = (walk_enums([o for o in s['types'] - if o.__class__.__name__ == 'Enum'])) - j['enumflags'] = (walk_enums([o for o in s['types'] - if o.__class__.__name__ == 'EnumFlag'])) - j['services'] = walk_services(s['Service']) - j['options'] = s['Option'] - j['aliases'] = {o.name:o.alias for o in s['types'] if o.__class__.__name__ == 'Using'} - j['vl_api_version'] = hex(s['file_crc']) - j['imports'] = walk_imports(i for i in s['Import']) - j['counters'], j['paths'] = walk_counters(s['Counters'], s['Paths']) - return json.dumps(j, indent=4, separators=(',', ': ')) + j["types"] = walk_defs([o for o in s["types"] if o.__class__.__name__ == "Typedef"]) + j["messages"] = walk_defs(s["Define"], True) + j["unions"] = walk_defs([o for o in s["types"] if o.__class__.__name__ == "Union"]) + j["enums"] = walk_enums([o for o in s["types"] if o.__class__.__name__ == "Enum"]) + j["enumflags"] = walk_enums( + [o for o in s["types"] if o.__class__.__name__ == "EnumFlag"] + ) + j["services"] = walk_services(s["Service"]) + j["options"] = s["Option"] + j["aliases"] = { + o.name: o.alias for o in s["types"] if o.__class__.__name__ == "Using" + } + j["vl_api_version"] = hex(s["file_crc"]) + j["imports"] = walk_imports(i for i in s["Import"]) + j["counters"], j["paths"] = walk_counters(s["Counters"], s["Paths"]) + return json.dumps(j, indent=4, separators=(",", ": ")) |