| 128 | return ExpressionConverter.Equal(f.Value, value) |
| 129 | |
| 130 | def resolveSize(self, exp): |
| 131 | shift = 0 |
| 132 | key = exp |
| 133 | |
| 134 | if "<<" in exp: |
| 135 | offset = exp.find("<<") |
| 136 | key = exp[0:offset].strip() |
| 137 | shift = int(exp[offset + 2 :].strip()) |
| 138 | |
| 139 | if key in self.fieldDict: |
| 140 | field = self.fieldDict[key] |
| 141 | _, u16 = ExpressionConverter.ToNum(field.Value) |
| 142 | if u16: |
| 143 | return u16 << shift |
| 144 | else: |
| 145 | return 0 |
| 146 | |
| 147 | if key in self.attributeDict: |
| 148 | attr = self.attributeDict[key] |
| 149 | _, u16 = ExpressionConverter.ToNum(attr.Value) |
| 150 | if u16: |
| 151 | return u16 << shift |
| 152 | else: |
| 153 | return 0 |
| 154 | |
| 155 | return 0 |
| 156 | |
| 157 | def Adjust(self): |
| 158 | autoIncreases = [] |