| 96 | self.parent = parent |
| 97 | |
| 98 | class Variable(ParsingItem): |
| 99 | def __init__(self, parent): |
| 100 | super().__init__(parent) |
| 101 | self.name = None |
| 102 | self.arrayIndex = None |
| 103 | self.coding = None |
| 104 | self.description = None |
| 105 | def fromText(self, name : str, descriptor : str, variableDescriptions : dict): |
| 106 | if ("[" in name and "]" in name): |
| 107 | self.arrayIndex = [] |
| 108 | openBracket = name.find("[") |
| 109 | self.name = name[0:openBracket] |
| 110 | while (True): |
| 111 | closeBracket = name.find("]") |
| 112 | newIndex = cleanArgument(name[openBracket+1:closeBracket].strip()) |
| 113 | self.arrayIndex.append(newIndex) |
| 114 | name = name[closeBracket+1:] |
| 115 | openBracket = name.find("[") |
| 116 | if (openBracket == -1): |
| 117 | break |
| 118 | else: |
| 119 | self.name = name |
| 120 | if (self.name in variableDescriptions): |
| 121 | self.description = variableDescriptions[self.name] |
| 122 | self.coding = CodingType(descriptor) |
| 123 | def __str__(self): |
| 124 | s = "" |
| 125 | for _ in range(self.parent.depth): |
| 126 | s += " " |
| 127 | s += self.name |
| 128 | if (self.arrayIndex): |
| 129 | s += str(self.arrayIndex) |
| 130 | return f"{s} --> {self.coding}" |
| 131 | |
| 132 | class CommentEntry(ParsingItem): |
| 133 | def __init__(self, parent): |