class NameAndNumberForm(object):
def __init__(self, elements):
- self.name = _create_sema_node(elements[0])
+ # The first element is a NameForm containing only the
+ # name, so unpack it into a string.
+ self.name = elements[0].elements[0]
self.number = _maybe_create_sema_node(elements[1])
def references(self):
self.components = [_maybe_create_sema_node(c) for c in elements]
def references(self):
- # TODO
- return []
+ references = []
+ for component in self.components:
+ if not isinstance(component, str):
+ references.extend(component.references())
+
+ return references
def __str__(self):
return '{' + ' '.join(str(x) for x in self.components) + '}'
v2 OBJECT IDENTIFIER ::= {1 2 840 113549}
-- Value assignment, name form
- v3 OBJECT IDENTIFIER ::= {iso member-body us rsadsi}
+ -- First three parts are known names, the last one a defined value.
+ local INTEGER ::= 1234
+ v3 OBJECT IDENTIFIER ::= {iso member-body us local}
+
+ -- Value assignment, mixed
+ v4 OBJECT IDENTIFIER ::= {v1 723 local}
END