diff options
| author | Alex Cameron <asc@tetsuo.sh> | 2021-09-08 22:54:21 +1000 |
|---|---|---|
| committer | Peter LaFosse <peter@vector35.com> | 2021-09-15 07:58:48 -0400 |
| commit | 4f51a6a7a53af3dc5e1d1b9494248ae4ab326b63 (patch) | |
| tree | ba70fbf733248f7b3bbc63cd8c675635896abcd6 /python/architecture.py | |
| parent | 3c69a7801b15d00a042545f7d64c1ee3fe2920f9 (diff) | |
Avoid using `isinstance` on objects returned by `NewType`
Diffstat (limited to 'python/architecture.py')
| -rw-r--r-- | python/architecture.py | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/python/architecture.py b/python/architecture.py index 0b233697..88ca8819 100644 --- a/python/architecture.py +++ b/python/architecture.py @@ -1441,7 +1441,7 @@ class Architecture(metaclass=_ArchitectureMetaClass): log_error(traceback.format_exc()) elif isinstance(reg, lowlevelil.ILRegister): return reg.index - elif isinstance(reg, RegisterIndex): + elif isinstance(reg, int): return reg raise Exception("Attempting to get register index of non-existant register") @@ -1452,7 +1452,7 @@ class Architecture(metaclass=_ArchitectureMetaClass): return reg_stack_info.index elif isinstance(reg_stack, lowlevelil.ILRegisterStack): return reg_stack.index - elif isinstance(reg_stack, RegisterStackIndex): + elif isinstance(reg_stack, int): return reg_stack raise Exception("reg_stack is not convertable to index") @@ -1461,16 +1461,16 @@ class Architecture(metaclass=_ArchitectureMetaClass): return self._flags[flag] elif isinstance(flag, lowlevelil.ILFlag): return flag.index - elif isinstance(flag, FlagIndex): + elif isinstance(flag, int): return flag raise Exception("flag is not convertable to index") def get_semantic_flag_class_index(self, sem_class:SemanticClassType) -> SemanticClassIndex: - if isinstance(sem_class, SemanticClassName): + if isinstance(sem_class, str): return self._semantic_flag_classes[sem_class] elif isinstance(sem_class, lowlevelil.ILSemanticFlagClass): return sem_class.index - elif isinstance(sem_class, SemanticClassIndex): + elif isinstance(sem_class, int): return sem_class raise Exception("sem_class is not convertable to index") @@ -1529,11 +1529,11 @@ class Architecture(metaclass=_ArchitectureMetaClass): :return: the corresponding intrinsic string :rtype: IntrinsicIndex """ - if isinstance(intrinsic, IntrinsicName): + if isinstance(intrinsic, str): return self._intrinsics[intrinsic] elif isinstance(intrinsic, lowlevelil.ILIntrinsic): return intrinsic.index - elif isinstance(intrinsic, IntrinsicIndex): + elif isinstance(intrinsic, int): return intrinsic raise Exception("intrinsic is not convertable to index") @@ -1630,7 +1630,7 @@ class Architecture(metaclass=_ArchitectureMetaClass): operand_list = (core.BNRegisterOrConstant * len(operands))() for i in range(len(operands)): operand = operands[i] - if isinstance(operand, RegisterName): + if isinstance(operand, str): operand_list[i].constant = False operand_list[i].reg = self.regs[operand].index elif isinstance(operand, lowlevelil.ILRegister): @@ -2328,7 +2328,7 @@ class CoreArchitecture(Architecture): operand_list = (core.BNRegisterOrConstant * len(operands))() for i in range(len(operands)): operand = operands[i] - if isinstance(operand, RegisterName): + if isinstance(operand, str): operand_list[i].constant = False operand_list[i].reg = self.regs[operand].index elif isinstance(operand, lowlevelil.ILRegister): |
