diff options
Diffstat (limited to 'snappy-sinksource.cc')
-rw-r--r-- | snappy-sinksource.cc | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/snappy-sinksource.cc b/snappy-sinksource.cc new file mode 100644 index 0000000..7d7ef36 --- /dev/null +++ b/snappy-sinksource.cc @@ -0,0 +1,46 @@ +// Copyright 2011 Google Inc. All Rights Reserved. + +#include <string.h> + +#include "snappy-sinksource.h" + +namespace snappy { + +Source::~Source() { } + +Sink::~Sink() { } + +char* Sink::GetAppendBuffer(size_t length, char* scratch) { + return scratch; +} + +ByteArraySource::~ByteArraySource() { } + +size_t ByteArraySource::Available() const { return left_; } + +const char* ByteArraySource::Peek(size_t* len) { + *len = left_; + return ptr_; +} + +void ByteArraySource::Skip(size_t n) { + left_ -= n; + ptr_ += n; +} + +UncheckedByteArraySink::~UncheckedByteArraySink() { } + +void UncheckedByteArraySink::Append(const char* data, size_t n) { + // Do no copying if the caller filled in the result of GetAppendBuffer() + if (data != dest_) { + memcpy(dest_, data, n); + } + dest_ += n; +} + +char* UncheckedByteArraySink::GetAppendBuffer(size_t len, char* scratch) { + return dest_; +} + + +} |