class Gzip
class Gzip
lib/compress/gzip.tya:4
Gzip provides gzip compression and decompression.
Source
# Gzip provides gzip compression and decompression.
class Gzip implements Codec
# Gzip.compress compresses data with gzip.
# @param value String value value.
# @return Any the resulting value.
compress: value ->
compress_gzip(value)
# Gzip.decompress decompresses gzip data.
# @param value String value value.
# @return Any the resulting value.
decompress: value ->
compress_gunzip(value)
# Gzip.compress_file compresses a file with gzip.
# @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
# Gzip.decompress_file decompresses a gzip 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
Gzip.compress(value)
lib/compress/gzip.tya:8
Gzip.compress compresses data with gzip.
Source
# Gzip.compress compresses data with gzip.
# @param value String value value.
# @return Any the resulting value.
compress: value ->
compress_gzip(value)
compress_file
Gzip.compress_file(src, dst)
lib/compress/gzip.tya:21
Gzip.compress_file compresses a file with gzip.
Source
# Gzip.compress_file compresses a file with gzip.
# @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
Gzip.decompress(value)
lib/compress/gzip.tya:14
Gzip.decompress decompresses gzip data.
Source
# Gzip.decompress decompresses gzip data.
# @param value String value value.
# @return Any the resulting value.
decompress: value ->
compress_gunzip(value)
decompress_file
Gzip.decompress_file(src, dst)
lib/compress/gzip.tya:30
Gzip.decompress_file decompresses a gzip file.
Source
# Gzip.decompress_file decompresses a gzip 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