(self)
return None
Determines the appropriate native_types to use from the JSON
        data.
Determines the appropriate native_types to use from the JSON
        data.
Determines the appropriate native_types to use from the JSON data .
def _get_natives(self) -> Optional[interfaces.symbols.NativeTableInterface]:
        """Determines the appropriate native_types to use from the JSON
        data."""
        # TODO: Consider how to generate the natives entirely from the ISF
        classes = {"x64": native.x64NativeTable, "x86": native.x86NativeTable}
        for nc in sorted(classes):
            native_class = classes[nc]
            for base_type in self._json_object['base_types']:
                try:
                    if self._json_object['base_types'][base_type]['length'] != native_class.get_type(base_type).size:
                        break
                except TypeError:
                    # TODO: determine whether we should give voids a size - We don't give voids a length, whereas microsoft seemingly do
                    pass
            else:
                vollog.debug("Choosing appropriate natives for symbol library: {}".format(nc))
                return native_class.natives
        return None
def _get_natives ( self ) -> Optional [ interfaces . symbols . NativeTableInterface ] : # TODO: Consider how to generate the natives entirely from the ISF classes = { "x64" : native . x64NativeTable , "x86" : native . x86NativeTable } for nc in sorted ( classes ) : native_class = classes [ nc ] for base_type in self . _json_object [ 'base_types' ] : try : if self . _json_object [ 'base_types' ] [ base_type ] [ 'length' ] != native_class . get_type ( base_type ) . size : break except TypeError : # TODO: determine whether we should give voids a size - We don't give voids a length, whereas microsoft seemingly do pass else : vollog . debug ( "Choosing appropriate natives for symbol library: {}" . format ( nc ) ) return native_class . natives return None