snappy 0.0.6 → 0.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +8 -8
- data/ext/api.c +98 -0
- data/ext/extconf.rb +0 -1
- data/lib/snappy/version.rb +1 -1
- data/test/test-snappy.rb +12 -0
- metadata +3 -3
- data/ext/api.cc +0 -72
    
        checksums.yaml
    CHANGED
    
    | @@ -1,15 +1,15 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            !binary "U0hBMQ==":
         | 
| 3 3 | 
             
              metadata.gz: !binary |-
         | 
| 4 | 
            -
                 | 
| 4 | 
            +
                YTdmZWM4Y2U4OTJkYTgxY2E3MDUyYzE2MDZjMGVhMWMyYmJmNWE4Yg==
         | 
| 5 5 | 
             
              data.tar.gz: !binary |-
         | 
| 6 | 
            -
                 | 
| 6 | 
            +
                NjFlNmUzMjYwYjFhZjhlZGQ4YTBmODNjZGYyNzU5NDI0ZmVlMzA0Yg==
         | 
| 7 7 | 
             
            !binary "U0hBNTEy":
         | 
| 8 8 | 
             
              metadata.gz: !binary |-
         | 
| 9 | 
            -
                 | 
| 10 | 
            -
                 | 
| 11 | 
            -
                 | 
| 9 | 
            +
                MTU4ZDY5YzM5M2Q2ZmE5YTU2ZTgwYWUxOTQxZTFkYzk4Y2Q1YmZiMGUxZDBl
         | 
| 10 | 
            +
                Njc5YWVjNzU2YzU3M2MxNDYwYzBiODJkNWI4MWVjZTlmY2E3MDc4YjJlZGNj
         | 
| 11 | 
            +
                YTgwMThhNWExOWQyMTY2Yjc3NzAzNTAwM2ZlMTk2YmZmZWIzMDU=
         | 
| 12 12 | 
             
              data.tar.gz: !binary |-
         | 
| 13 | 
            -
                 | 
| 14 | 
            -
                 | 
| 15 | 
            -
                 | 
| 13 | 
            +
                OWE4YTI2NWUxODJhN2E2MjBjNWM0OWYzNDJhMzdjMzA4YTFiNjA4YmEwNzUy
         | 
| 14 | 
            +
                MWUxNDdjZmQxMWJmNWNkYmQ5MTE4ODNiMTYwY2I2MDJiMDQ5ZjdmNzM1OGRh
         | 
| 15 | 
            +
                NmYxMzY2YzAwNzI0NjlhYWU2NjRkMGRmZWFjYzBhZTlkMGI2NmE=
         | 
    
        data/ext/api.c
    ADDED
    
    | @@ -0,0 +1,98 @@ | |
| 1 | 
            +
            #include "ruby.h"
         | 
| 2 | 
            +
            #include "snappy-c.h"
         | 
| 3 | 
            +
             | 
| 4 | 
            +
            static VALUE rb_mSnappy;
         | 
| 5 | 
            +
            static VALUE rb_eSnappy;
         | 
| 6 | 
            +
             | 
| 7 | 
            +
            static VALUE
         | 
| 8 | 
            +
            snappy_raise(snappy_status result)
         | 
| 9 | 
            +
            {
         | 
| 10 | 
            +
                if (result == SNAPPY_INVALID_INPUT) {
         | 
| 11 | 
            +
                    rb_raise(rb_eSnappy, "INVALID INPUT");
         | 
| 12 | 
            +
                } else if (result == SNAPPY_BUFFER_TOO_SMALL) {
         | 
| 13 | 
            +
                    rb_raise(rb_eSnappy, "BUFFER TOO SMALL");
         | 
| 14 | 
            +
                } else {
         | 
| 15 | 
            +
                    rb_raise(rb_eSnappy, "ERROR");
         | 
| 16 | 
            +
                }
         | 
| 17 | 
            +
                return Qnil;
         | 
| 18 | 
            +
            }
         | 
| 19 | 
            +
             | 
| 20 | 
            +
            static VALUE
         | 
| 21 | 
            +
            snappy_deflate(int argc, VALUE *argv, VALUE self)
         | 
| 22 | 
            +
            {
         | 
| 23 | 
            +
                VALUE src, dst;
         | 
| 24 | 
            +
                size_t  output_length;
         | 
| 25 | 
            +
                snappy_status result;
         | 
| 26 | 
            +
             | 
| 27 | 
            +
                rb_scan_args(argc, argv, "11", &src, &dst);
         | 
| 28 | 
            +
                StringValue(src);
         | 
| 29 | 
            +
             | 
| 30 | 
            +
                output_length = snappy_max_compressed_length(RSTRING_LEN(src));
         | 
| 31 | 
            +
             | 
| 32 | 
            +
                if (NIL_P(dst)) {
         | 
| 33 | 
            +
                    dst = rb_str_new(NULL, output_length);
         | 
| 34 | 
            +
                } else {
         | 
| 35 | 
            +
                	StringValue(dst);
         | 
| 36 | 
            +
                	rb_str_resize(dst, output_length);
         | 
| 37 | 
            +
                }
         | 
| 38 | 
            +
             | 
| 39 | 
            +
                result = snappy_compress(RSTRING_PTR(src), RSTRING_LEN(src), RSTRING_PTR(dst), &output_length);
         | 
| 40 | 
            +
                if (result == SNAPPY_OK) {
         | 
| 41 | 
            +
                    rb_str_resize(dst, output_length);
         | 
| 42 | 
            +
                    return dst;
         | 
| 43 | 
            +
                } else {
         | 
| 44 | 
            +
                    return snappy_raise(result);
         | 
| 45 | 
            +
                }
         | 
| 46 | 
            +
            }
         | 
| 47 | 
            +
             | 
| 48 | 
            +
            static VALUE
         | 
| 49 | 
            +
            snappy_inflate(int argc, VALUE *argv, VALUE self)
         | 
| 50 | 
            +
            {
         | 
| 51 | 
            +
                VALUE src, dst;
         | 
| 52 | 
            +
                size_t output_length;
         | 
| 53 | 
            +
                snappy_status result;
         | 
| 54 | 
            +
             | 
| 55 | 
            +
                rb_scan_args(argc, argv, "11", &src, &dst);
         | 
| 56 | 
            +
                StringValue(src);
         | 
| 57 | 
            +
             | 
| 58 | 
            +
                result = snappy_uncompressed_length(RSTRING_PTR(src), RSTRING_LEN(src), &output_length);
         | 
| 59 | 
            +
                if (result != SNAPPY_OK) {
         | 
| 60 | 
            +
                    return snappy_raise(result);
         | 
| 61 | 
            +
                }
         | 
| 62 | 
            +
             | 
| 63 | 
            +
                if (NIL_P(dst)) {
         | 
| 64 | 
            +
                    dst = rb_str_new(NULL, output_length);
         | 
| 65 | 
            +
                } else {
         | 
| 66 | 
            +
                	StringValue(dst);
         | 
| 67 | 
            +
                	rb_str_resize(dst, output_length);
         | 
| 68 | 
            +
                }
         | 
| 69 | 
            +
             | 
| 70 | 
            +
                result = snappy_uncompress(RSTRING_PTR(src), RSTRING_LEN(src), RSTRING_PTR(dst), &output_length);
         | 
| 71 | 
            +
                if (result != SNAPPY_OK) {
         | 
| 72 | 
            +
                    return snappy_raise(result);
         | 
| 73 | 
            +
                }
         | 
| 74 | 
            +
             | 
| 75 | 
            +
                StringValue(dst);
         | 
| 76 | 
            +
                rb_str_resize(dst, output_length);
         | 
| 77 | 
            +
             | 
| 78 | 
            +
                return dst;
         | 
| 79 | 
            +
            }
         | 
| 80 | 
            +
             | 
| 81 | 
            +
            void Init_snappy()
         | 
| 82 | 
            +
            {
         | 
| 83 | 
            +
                rb_mSnappy = rb_define_module("Snappy");
         | 
| 84 | 
            +
                rb_eSnappy = rb_define_class_under(rb_mSnappy, "Error", rb_eStandardError);
         | 
| 85 | 
            +
                rb_define_singleton_method(rb_mSnappy, "deflate", snappy_deflate, -1);
         | 
| 86 | 
            +
                rb_define_singleton_method(rb_mSnappy, "inflate", snappy_inflate, -1);
         | 
| 87 | 
            +
             | 
| 88 | 
            +
                VALUE rb_mSnappy_singleton = rb_singleton_class(rb_mSnappy);
         | 
| 89 | 
            +
             | 
| 90 | 
            +
                rb_define_alias(rb_mSnappy_singleton, "compress", "deflate");
         | 
| 91 | 
            +
                rb_define_alias(rb_mSnappy_singleton, "load", "deflate");
         | 
| 92 | 
            +
             | 
| 93 | 
            +
                rb_define_alias(rb_mSnappy_singleton, "uncompress", "inflate");
         | 
| 94 | 
            +
                rb_define_alias(rb_mSnappy_singleton, "dump", "inflate");
         | 
| 95 | 
            +
             | 
| 96 | 
            +
                rb_require("snappy/writer");
         | 
| 97 | 
            +
                rb_require("snappy/reader");
         | 
| 98 | 
            +
            }
         | 
    
        data/ext/extconf.rb
    CHANGED
    
    
    
        data/lib/snappy/version.rb
    CHANGED
    
    
    
        data/test/test-snappy.rb
    CHANGED
    
    | @@ -9,4 +9,16 @@ describe Snappy do | |
| 9 9 | 
             
                s = Array.new(1024){T.sample}.join
         | 
| 10 10 | 
             
                Snappy.inflate(Snappy.deflate s).must_equal(s)
         | 
| 11 11 | 
             
              end
         | 
| 12 | 
            +
             | 
| 13 | 
            +
              it "well done (pair)" do
         | 
| 14 | 
            +
                s = Array.new(1024){T.sample}.join
         | 
| 15 | 
            +
                [
         | 
| 16 | 
            +
                 [:deflate,  :inflate],
         | 
| 17 | 
            +
                 [:compress, :uncompress],
         | 
| 18 | 
            +
                 [:load,     :dump],
         | 
| 19 | 
            +
                ].each do |(i, o)|
         | 
| 20 | 
            +
                  Snappy.__send__(o, (Snappy.__send__ i,  s)).must_equal(s)
         | 
| 21 | 
            +
                  eval %{Snappy.#{o}(Snappy.#{i} s).must_equal(s)}
         | 
| 22 | 
            +
                end
         | 
| 23 | 
            +
              end
         | 
| 12 24 | 
             
            end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: snappy
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.0. | 
| 4 | 
            +
              version: 0.0.7
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - miyucy
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2013-03- | 
| 11 | 
            +
            date: 2013-03-23 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: bundler
         | 
| @@ -65,7 +65,7 @@ files: | |
| 65 65 | 
             
            - LICENSE.txt
         | 
| 66 66 | 
             
            - README.md
         | 
| 67 67 | 
             
            - Rakefile
         | 
| 68 | 
            -
            - ext/api. | 
| 68 | 
            +
            - ext/api.c
         | 
| 69 69 | 
             
            - ext/extconf.rb
         | 
| 70 70 | 
             
            - lib/snappy/reader.rb
         | 
| 71 71 | 
             
            - lib/snappy/version.rb
         | 
    
        data/ext/api.cc
    DELETED
    
    | @@ -1,72 +0,0 @@ | |
| 1 | 
            -
            #include "ruby.h"
         | 
| 2 | 
            -
            #include "snappy.h"
         | 
| 3 | 
            -
             | 
| 4 | 
            -
            static VALUE rb_mSnappy;
         | 
| 5 | 
            -
            static VALUE rb_eSnappy;
         | 
| 6 | 
            -
             | 
| 7 | 
            -
            static VALUE
         | 
| 8 | 
            -
            snappy_deflate(int argc, VALUE *argv, VALUE self)
         | 
| 9 | 
            -
            {
         | 
| 10 | 
            -
                VALUE src, dst;
         | 
| 11 | 
            -
                size_t  output_length;
         | 
| 12 | 
            -
             | 
| 13 | 
            -
                rb_scan_args(argc, argv, "11", &src, &dst);
         | 
| 14 | 
            -
                StringValue(src);
         | 
| 15 | 
            -
             | 
| 16 | 
            -
                output_length = snappy::MaxCompressedLength(RSTRING_LEN(src));
         | 
| 17 | 
            -
             | 
| 18 | 
            -
                if (NIL_P(dst)) {
         | 
| 19 | 
            -
                    dst = rb_str_new(NULL, output_length);
         | 
| 20 | 
            -
                } else {
         | 
| 21 | 
            -
                	StringValue(dst);
         | 
| 22 | 
            -
                	rb_str_resize(dst, output_length);
         | 
| 23 | 
            -
                }
         | 
| 24 | 
            -
             | 
| 25 | 
            -
                snappy::RawCompress(RSTRING_PTR(src), RSTRING_LEN(src), RSTRING_PTR(dst), &output_length);
         | 
| 26 | 
            -
                rb_str_resize(dst, output_length);
         | 
| 27 | 
            -
             | 
| 28 | 
            -
                return dst;
         | 
| 29 | 
            -
            }
         | 
| 30 | 
            -
             | 
| 31 | 
            -
            static VALUE
         | 
| 32 | 
            -
            snappy_inflate(int argc, VALUE *argv, VALUE self)
         | 
| 33 | 
            -
            {
         | 
| 34 | 
            -
                VALUE src, dst;
         | 
| 35 | 
            -
                size_t output_length;
         | 
| 36 | 
            -
             | 
| 37 | 
            -
                rb_scan_args(argc, argv, "11", &src, &dst);
         | 
| 38 | 
            -
                StringValue(src);
         | 
| 39 | 
            -
             | 
| 40 | 
            -
                if (!snappy::GetUncompressedLength(RSTRING_PTR(src), RSTRING_LEN(src), &output_length)) {
         | 
| 41 | 
            -
                    rb_raise(rb_eSnappy, "snappy::GetUncompressedLength");
         | 
| 42 | 
            -
                }
         | 
| 43 | 
            -
             | 
| 44 | 
            -
                if (NIL_P(dst)) {
         | 
| 45 | 
            -
                    dst = rb_str_new(NULL, output_length);
         | 
| 46 | 
            -
                } else {
         | 
| 47 | 
            -
                	StringValue(dst);
         | 
| 48 | 
            -
                	rb_str_resize(dst, output_length);
         | 
| 49 | 
            -
                }
         | 
| 50 | 
            -
             | 
| 51 | 
            -
                if (!snappy::RawUncompress(RSTRING_PTR(src), RSTRING_LEN(src), RSTRING_PTR(dst))) {
         | 
| 52 | 
            -
                    rb_raise(rb_eSnappy, "snappy::RawUncompress");
         | 
| 53 | 
            -
                }
         | 
| 54 | 
            -
             | 
| 55 | 
            -
                return dst;
         | 
| 56 | 
            -
            }
         | 
| 57 | 
            -
             | 
| 58 | 
            -
            extern "C" {
         | 
| 59 | 
            -
            void Init_snappy()
         | 
| 60 | 
            -
            {
         | 
| 61 | 
            -
                rb_mSnappy = rb_define_module("Snappy");
         | 
| 62 | 
            -
                rb_eSnappy = rb_define_class_under(rb_mSnappy, "Error", rb_eStandardError);
         | 
| 63 | 
            -
                rb_define_singleton_method(rb_mSnappy, "deflate", (VALUE (*)(...))snappy_deflate, -1);
         | 
| 64 | 
            -
                rb_define_singleton_method(rb_mSnappy, "inflate", (VALUE (*)(...))snappy_inflate, -1);
         | 
| 65 | 
            -
             | 
| 66 | 
            -
                rb_define_singleton_method(rb_mSnappy, "compress", (VALUE (*)(...))snappy_deflate, -1);
         | 
| 67 | 
            -
                rb_define_singleton_method(rb_mSnappy, "uncompress", (VALUE (*)(...))snappy_inflate, -1);
         | 
| 68 | 
            -
             | 
| 69 | 
            -
                rb_require("snappy/writer");
         | 
| 70 | 
            -
                rb_require("snappy/reader");
         | 
| 71 | 
            -
            }
         | 
| 72 | 
            -
            }
         |