summaryrefslogtreecommitdiff
path: root/src/mongo/util/compress.cpp
blob: 8bde46853addac45337701a09259c49cebcb9243 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// @file compress.cpp

#include "mongo/util/compress.h"

#include "third_party/snappy/snappy.h"

namespace mongo {

    void rawCompress(const char* input,
        size_t input_length,
        char* compressed,
        size_t* compressed_length)
    {
        snappy::RawCompress(input, input_length, compressed, compressed_length);
    }

    size_t maxCompressedLength(size_t source_len) {
        return snappy::MaxCompressedLength(source_len);
    }

    size_t compress(const char* input, size_t input_length, std::string* output) {
        return snappy::Compress(input, input_length, output);
    }

    bool uncompress(const char* compressed, size_t compressed_length, std::string* uncompressed) {
        return snappy::Uncompress(compressed, compressed_length, uncompressed);
    }

}