summaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
Diffstat (limited to 'python')
-rw-r--r--python/function.py13
-rw-r--r--python/mediumlevelil.py1
2 files changed, 14 insertions, 0 deletions
diff --git a/python/function.py b/python/function.py
index 8bfd2405..e328fd04 100644
--- a/python/function.py
+++ b/python/function.py
@@ -878,6 +878,19 @@ class Function:
return mediumlevelil.MediumLevelILFunction(self.arch, result, self)
@property
+ def mmlil(self) -> 'mediumlevelil.MediumLevelILFunction':
+ """Function mapped medium level IL (read-only)"""
+ return mediumlevelil.MediumLevelILFunction(self.arch, core.BNGetFunctionMappedMediumLevelIL(self.handle), self)
+
+ @property
+ def mmlil_if_available(self) -> Optional['mediumlevelil.MediumLevelILFunction']:
+ """Function mapped medium level IL, or None if not loaded (read-only)"""
+ result = core.BNGetFunctionMappedMediumLevelILIfAvailable(self.handle)
+ if not result:
+ return None
+ return mediumlevelil.MediumLevelILFunction(self.arch, result, self)
+
+ @property
def high_level_il(self) -> 'highlevelil.HighLevelILFunction':
"""Function high level IL (read-only)"""
return highlevelil.HighLevelILFunction(self.arch, core.BNGetFunctionHighLevelIL(self.handle), self)
diff --git a/python/mediumlevelil.py b/python/mediumlevelil.py
index 1a710c85..d7903fb2 100644
--- a/python/mediumlevelil.py
+++ b/python/mediumlevelil.py
@@ -18,6 +18,7 @@
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
# IN THE SOFTWARE.
+from abc import abstractmethod
import ctypes
import struct
from typing import Optional, List, Union, Mapping, Generator, NewType, Tuple, ClassVar