#ifdef NALL_STREAM_INTERNAL_HPP12namespace nall {34struct zipstream : memorystream {5inline zipstream(const stream &stream, const string &filter = "*") {6unsigned size = stream.size();7uint8_t *data = new uint8_t[size];8stream.read(data, size);910zip archive;11if(archive.open(data, size) == false) return;12delete[] data;1314for(auto &file : archive.file) {15if(file.name.wildcard(filter)) {16archive.extract(file, pdata, psize);17return;18}19}20}2122inline ~zipstream() {23if(pdata) delete[] pdata;24}25};2627}2829#endif303132