diff options
| author | Josh Ferrell <josh@vector35.com> | 2025-11-19 12:40:29 -0500 |
|---|---|---|
| committer | Josh Ferrell <josh@vector35.com> | 2025-11-19 15:05:16 -0500 |
| commit | dae5a014ccbfe5a99379163b49e426eeb0b9e766 (patch) | |
| tree | 7e6d66c5dec8620f7299ed3e0e6c756875e871b1 /python/datarender.py | |
| parent | d4a7ed9b8fce07ce7206d4ab48b0b333ae69d47a (diff) | |
Improve python api type hints
Diffstat (limited to 'python/datarender.py')
| -rw-r--r-- | python/datarender.py | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/python/datarender.py b/python/datarender.py index d516f26e..152477ae 100644 --- a/python/datarender.py +++ b/python/datarender.py @@ -20,6 +20,7 @@ import traceback import ctypes +from typing import List, Optional import binaryninja from . import _binaryninjacore as core @@ -34,7 +35,7 @@ from . import types class TypeContext: - def __init__(self, _type, _offset): + def __init__(self, _type: types.Type, _offset: int): self._type = _type self._offset = _offset @@ -85,7 +86,7 @@ class DataRenderer: """ _registered_renderers = [] - def __init__(self, context=None): + def __init__(self, context: Optional[TypeContext] = None): self._cb = core.BNCustomDataRenderer() self._cb.context = context self._cb.freeObject = self._cb.freeObject.__class__(self._free_object) @@ -137,7 +138,7 @@ class DataRenderer: type = types.Type.create(handle=core.BNNewTypeReference(type)) prefixTokens = function.InstructionTextToken._from_core_struct(prefix, prefixCount) - pycontext = [] + pycontext: List[TypeContext] = [] for i in range(ctxCount): pycontext.append( TypeContext(types.Type.create(core.BNNewTypeReference(typeCtx[i].type)), typeCtx[i].offset) @@ -184,13 +185,13 @@ class DataRenderer: def perform_free_object(self, ctxt): pass - def perform_is_valid_for_data(self, ctxt, view, addr, type, context): + def perform_is_valid_for_data(self, ctxt, view: binaryview.BinaryView, addr: int, type: types.Type, context: List[TypeContext]) -> bool: return False - def perform_get_lines_for_data(self, ctxt, view, addr, type, prefix, width, context): + def perform_get_lines_for_data(self, ctxt, view: binaryview.BinaryView, addr: int, type: types.Type, prefix: List[function.InstructionTextToken], width: int, context: List[TypeContext]) -> List['function.DisassemblyTextLine']: return [] - def perform_get_lines_for_data_with_language(self, ctxt, view, addr, type, prefix, width, context, language): + def perform_get_lines_for_data_with_language(self, ctxt, view: binaryview.BinaryView, addr: int, type: types.Type, prefix: List[function.InstructionTextToken], width: int, context: List[TypeContext], language: str) -> List['function.DisassemblyTextLine']: return self.perform_get_lines_for_data(ctxt, view, addr, type, prefix, width, context) def __del__(self): |
