Skip to content

Perl6 bindings to (de)compress data in Google's Snappy compression format

License

Notifications You must be signed in to change notification settings

avuserow/perl6-compress-snappy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NAME

Compress::Snappy - (de)compress data in Google's Snappy compression format

INSTALLATION

libsnappy-dev or equivalent needs to be installed for this to work. Issue

sudo apt-get install libsnappy-dev

or equivalent order in other operatins systems or distros to do so.

SYNOPSIS

my Buf $compressed = Compress::Snappy::compress("hello, world");
my Bool $valid = Compress::Snappy::validate($compressed);
my Buf $decompressed = Compress::Snappy::decompress($compressed);

See also examples/test.p6

DESCRIPTION

This module uses NativeCall to provide bindings to the C API for libsnappy, a compression library with an emphasis on speed over compression.

FUNCTIONS

Compress::Snappy::compress(Blob $uncompressed) returns Buf

Main compression function. Returns a Buf of compressed data.

Compress::Snappy::compress(Str $uncompressed, Str $encoding = 'utf-8') returns Buf

Convenience function to make a Str to an encoded Blob and compress that. Encoding defaults to utf-8 if not specified.

Compress::Snappy::decompress(Blob $compressed, Str $encoding)

Decompress provided data to a Buf. If an optional $encoding is specified, will decode the Buf and return a Str instead.

Compress::Snappy::validate(Blob $compressed) returns Bool

Returns if the compressed data is valid, without fully decompressing it.

SEE ALSO

Snappy on Google Code

Snappy on GitHub

About

Perl6 bindings to (de)compress data in Google's Snappy compression format

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages