general: add support for declaring enums as struct members
the enum types are resolved to the wiretypes for the benefit of c-loxi.
diff --git a/loxigen.py b/loxigen.py
index dcd547e..f756dc0 100755
--- a/loxigen.py
+++ b/loxigen.py
@@ -442,7 +442,11 @@
if m.oftype == 'of_oxm_t':
m_type = 'of_octets_t'
else:
- m_type = m.oftype
+ enum = find(lambda e: e.name == m.oftype, ofinput.enums)
+ if enum and "wire_type" in enum.params:
+ m_type = enum.params["wire_type"]
+ else:
+ m_type = m.oftype
legacy_members.append(dict(m_type=m_type, name=m.name))
versions[version_name]['classes'][ofclass.name] = legacy_members