class Zlib
class Zlib
lib/compress/zlib.tya:4
Zlib provides zlib compression and decompression.
Source
# Zlib provides zlib compression and decompression.
class Zlib implements Codec
# Zlib.compress compresses data with zlib.
# @param value String value value.
# @return Any the resulting value.
compress: value ->
compress_zlib(value)
# Zlib.decompress decompresses zlib data.
# @param value String value value.
# @return Any the resulting value.
decompress: value ->
compress_unzlib(value)
# Zlib.compress_file compresses a file with zlib.
# @param src String src value.
# @param dst Any dst value.
# @return Any the resulting value.
compress_file: src, dst ->
data = Self.read_all(src)
Self.write_all(dst, self.compress(data))
nil
# Zlib.decompress_file decompresses a zlib file.
# @param src String src value.
# @param dst Any dst value.
# @return Any the resulting value.
decompress_file: src, dst ->
data = Self.read_all(src)
Self.write_all(dst, self.decompress(data))
nil
private static read_all: path ->
reader = io.Io().open(path, "rb")
data = reader.read(1048576)
all = b""
while data.len() > 0
all = all + data
data = reader.read(1048576)
reader.close()
all
private static write_all: path, data ->
writer = io.Io().open(path, "wb")
writer.write(data)
writer.close()
nil
Methods
compress
Zlib.compress(value)
lib/compress/zlib.tya:8
Zlib.compress compresses data with zlib.
Source
# Zlib.compress compresses data with zlib.
# @param value String value value.
# @return Any the resulting value.
compress: value ->
compress_zlib(value)
compress_file
Zlib.compress_file(src, dst)
lib/compress/zlib.tya:21
Zlib.compress_file compresses a file with zlib.
Source
# Zlib.compress_file compresses a file with zlib.
# @param src String src value.
# @param dst Any dst value.
# @return Any the resulting value.
compress_file: src, dst ->
data = Self.read_all(src)
Self.write_all(dst, self.compress(data))
nil
decompress
Zlib.decompress(value)
lib/compress/zlib.tya:14
Zlib.decompress decompresses zlib data.
Source
# Zlib.decompress decompresses zlib data.
# @param value String value value.
# @return Any the resulting value.
decompress: value ->
compress_unzlib(value)
decompress_file
Zlib.decompress_file(src, dst)
lib/compress/zlib.tya:30
Zlib.decompress_file decompresses a zlib file.
Source
# Zlib.decompress_file decompresses a zlib file.
# @param src String src value.
# @param dst Any dst value.
# @return Any the resulting value.
decompress_file: src, dst ->
data = Self.read_all(src)
Self.write_all(dst, self.decompress(data))
nil