| 1134 | |
| 1135 | @property |
| 1136 | def vars_read(self) -> List[Union[SSAVariable, variable.Variable]]: |
| 1137 | result = [] |
| 1138 | for param in self.params: |
| 1139 | if isinstance(param, MediumLevelILInstruction): |
| 1140 | result.extend(param.vars_read) |
| 1141 | elif isinstance(param, (variable.Variable, SSAVariable)): |
| 1142 | result.append(param) |
| 1143 | else: |
| 1144 | assert False, "Call.params returned object other than Variable, SSAVariable or MediumLevelILInstruction" |
| 1145 | return result |
| 1146 | |
| 1147 | |
| 1148 | @dataclass(frozen=True, repr=False, eq=False) |