summaryrefslogtreecommitdiff
path: root/python/architecture.py
diff options
context:
space:
mode:
authorAlex Cameron <asc@tetsuo.sh>2021-09-08 22:54:21 +1000
committerPeter LaFosse <peter@vector35.com>2021-09-15 07:58:48 -0400
commit4f51a6a7a53af3dc5e1d1b9494248ae4ab326b63 (patch)
treeba70fbf733248f7b3bbc63cd8c675635896abcd6 /python/architecture.py
parent3c69a7801b15d00a042545f7d64c1ee3fe2920f9 (diff)
Avoid using `isinstance` on objects returned by `NewType`
Diffstat (limited to 'python/architecture.py')
-rw-r--r--python/architecture.py18
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):