Name: fast_buf_read/2
Module: fastrw
Name: fast_buf_write/3
Name: zlib_compress/2
Name: zlib_compress/3
Name: zlib_compress_term/3
Name: zlib_compress_term/4
Name: zlib_uncompress/3
Name: zlib_uncompress_term/3
foreign(zlib_compress,c,zlib_compress(+term,+integer,[-term])). foreign(zlib_compress_buf_list,c,zlib_compress_buf_list(+address(char),+integer, +integer,[-term])). foreign(zlib_compress_default,c,zlib_compress(+term,[-term])). foreign(zlib_free_buffer,c,zlib_free_buffer(+address)). foreign(zlib_uncompress,c,zlib_uncompress(+term,+integer,[-term])). foreign(zlib_uncompress_list_buf,c,zlib_uncompress_list_buf(+term,+integer, [-address])).
foreign_resource(zlib,[ zlib_compress, zlib_compress_buf_list, zlib_compress_default, zlib_free_buffer, zlib_uncompress, zlib_uncompress_list_buf ]).
zlib_compress_term(Term,Compressed,Len) :- zlib_compress_term(Term,-1,Compressed,Len).
Calls:
Called:
zlib_compress_term(Term,Level,Compressed,Len) :- copy_term(Term,TermCopy), numbervars(TermCopy,0,_), fast_buf_write(TermCopy,Len,Addr), zlib_compress_buf_list(Addr,Len,Level,Compressed).
Name: zlib_compress_buf_list/4
Name: numbervars/3
Name: copy_term/2
zlib_uncompress_term(Compressed,Len,Term) :- zlib_uncompress_list_buf(Compressed,Len,Addr), fast_buf_read(Term,Addr), zlib_free_buffer(Addr).
Name: zlib_free_buffer/1
Name: zlib_uncompress_list_buf/3