예제 #1
0
 def open_resource(self, name):
     q = '/'.join(self.resource_prefix) + '/' + name
     idx = index_for_name(q)
     if idx < 0:
         raise FileNotFoundError(f'{name} is not present in {self.name}')
     import io
     offset, size = offsets_for_index(idx)
     return io.BytesIO(get_data_at(offset, size))
예제 #2
0
파일: importer.py 프로젝트: kovidgoyal/bypy
 def read_memoryview(self):
     if self.is_dir():
         raise IsADirectoryError(f'Is a directory: {self.name}')
     q = '/'.join(self._path_entries)
     idx = index_for_name(q)
     if idx < 0:
         raise FileNotFoundError(f'{q} not found')
     offset, size = offsets_for_index(idx)
     return get_data_at(offset, size)
예제 #3
0
def get_module_code(offset, size):
    data = get_data_at(offset, size)
    return marshal.loads(data)