cstring_value = dblQuotedString
builtin_value = boolean_value | bitstring_value | real_value | integer_value | null_value | cstring_value
- defined_value = Unique(valuereference) # todo: more options from 13.1
- referenced_value = Unique(defined_value) # todo: more options from 16.11
+ external_value_reference = module_reference + Suppress('.') + valuereference
+ defined_value = external_value_reference | valuereference # todo: more options from 13.1
+ referenced_value = Unique(defined_value) # todo: more options from 16.11
# object identifier value
name_form = Unique(identifier)
class ReferencedValue(SemaNode):
def __init__(self, elements):
- self.name = elements[0]
+ # TODO: Module references are not resolved at the moment,
+ # and I'm not sure how to handle them.
+ if len(elements) > 1 and elements[0].ty == 'ModuleReference':
+ self.module_reference = elements[0].elements[0]
+ self.name = elements[1]
+ else:
+ self.module_reference = None
+ self.name = elements[0]
def reference_name(self):
return self.name