MCPcopy Create free account
hub / github.com/FreeOpcUa/python-opcua / parse_enum

Method parse_enum

schemas/generate_model.py:408–434  ·  view source on GitHub ↗
(self, child)

Source from the content-addressed store, hash-verified

406 return struct
407
408 def parse_enum(self, child):
409 tag = child.tag[40:]
410 enum = Enum()
411 for k, v in child.items():
412 if k == 'Name':
413 enum.name = v
414 elif k == 'LengthInBits':
415 enum.uatype = f'UIntv{v}'
416 else:
417 print(f'Unknown attr for enum: {k}')
418 for el in child:
419 tag = el.tag[40:]
420 if tag == 'EnumeratedValue':
421 ev = EnumValue()
422 for k, v in el.attrib.items():
423 if k == 'Name':
424 ev.name = v
425 elif k == 'Value':
426 ev.value = v
427 else:
428 print(f'Unknown field attrib: {k}')
429 enum.values.append(ev)
430 elif tag == 'Documentation':
431 enum.doc = el.text
432 else:
433 print(f'Unknown enum tag: {tag}')
434 return enum
435
436
437# "def reorder_extobjects(model):

Callers 1

parseMethod · 0.95

Calls 2

EnumClass · 0.85
EnumValueClass · 0.85

Tested by

no test coverage detected