From 13a793f7ad19f43ff97c058becb76182b0159452 Mon Sep 17 00:00:00 2001 From: Jordan Wiens Date: Wed, 15 May 2019 15:17:57 -0700 Subject: first half of the refactor adding getters and setters for init created properties --- python/architecture.py | 52 ++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 44 insertions(+), 8 deletions(-) (limited to 'python/architecture.py') diff --git a/python/architecture.py b/python/architecture.py index c2f28a86..2d81beb0 100644 --- a/python/architecture.py +++ b/python/architecture.py @@ -2648,7 +2648,7 @@ class CoreArchitecture(Architecture): class ArchitectureHook(CoreArchitecture): def __init__(self, base_arch): - self.base_arch = base_arch + self._base_arch = base_arch super(ArchitectureHook, self).__init__(base_arch.handle) # To improve performance of simpler hooks, use null callback for functions that are not being overridden @@ -2677,17 +2677,53 @@ class ArchitectureHook(CoreArchitecture): def register(self): self.__class__._registered_cb = self._cb - self.handle = core.BNRegisterArchitectureHook(self.base_arch.handle, self._cb) + self.handle = core.BNRegisterArchitectureHook(self._base_arch.handle, self._cb) + + @property + def base_arch(self): + """ """ + return self._base_arch + + @base_arch.setter + def base_arch(self, value): + self._base_arch = value class ReferenceSource(object): def __init__(self, func, arch, addr): - self.function = func - self.arch = arch - self.address = addr + self._function = func + self._arch = arch + self._address = addr def __repr__(self): - if self.arch: - return "" % (self.arch.name, self.address) + if self._arch: + return "" % (self._arch.name, self._address) else: - return "" % self.address + return "" % self._address + + @property + def function(self): + """ """ + return self._function + + @function.setter + def function(self, value): + self._function = value + + @property + def arch(self): + """ """ + return self._arch + + @arch.setter + def arch(self, value): + self._arch = value + + @property + def address(self): + """ """ + return self._address + + @address.setter + def address(self, value): + self._address = value -- cgit v1.3.1