class documentation
class OssiTypeResolver(BaseTypeResolver):
A class to resolve types.
Some types need to reference forward-declared types to avoid eg. cyclic definitions. The resolver allows to efficiently resolve these types if needs be.
Method | __init__ |
Initialize a new instance of this class from a low-level connection and a binary id. |
Method | resolve |
Resolve a type from its name. |
Method | resolve |
Resolve all the types with the same name. |
Method | _assert |
Ensure that the debug object associated with this binary could be found |
Method | _resolve |
Resolve a type from its low level description. |
Instance Variable | _binary |
Undocumented |
Instance Variable | _rvn |
Undocumented |
Instance Variable | _types |
Undocumented |
def __init__(self, _rvn, binary_id):
Initialize a new instance of this class from a low-level connection and a binary id.
Warnings
This object is not currently meant to be constructed directly.
Parameters | |
_rvn:_reven_api.reven_connection | Undocumented |
binarystr | Undocumented |
def resolve(self, type_name):
Resolve a type from its name.
Information
Parameters | |
typestr | Undocumented |
Returns | |
Type | Undocumented |
Raises | |
RuntimeError | if the debug object associated with this binary could not be found, or if the resolved type is None. |
def resolve_multiples(self, type_name):
Resolve all the types with the same name.
Information
Parameters | |
typestr | Undocumented |
Returns | |
_List[ | Undocumented |
Raises | |
RuntimeError | if the debug object associated with this binary could not be found, or if one of the resolved type is None. |
def _assert_debug_binary_parsed(self):
Ensure that the debug object associated with this binary could be found
Information
Raises | |
RuntimeError | if the debug object associated with this binary could not be found |
def _resolve_maybe_type_description(self, maybe_type_description):
Resolve a type from its low level description.
Information
Parameters | |
maybe_reven_api.MaybeTypeDescription | Undocumented |
Returns | |
Type | Undocumented |
Raises | |
RuntimeError | if the debug object associated with this binary could not be found, or if the resolved type is None. |