aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/clickhouse/client/base/compressed.h
diff options
context:
space:
mode:
authorgalaxycrab <UgnineSirdis@ydb.tech>2023-11-23 11:26:33 +0300
committergalaxycrab <UgnineSirdis@ydb.tech>2023-11-23 12:01:57 +0300
commit44354d0fc55926c1d4510d1d2c9c9f6a1a5e9300 (patch)
treecb4d75cd1c6dbc3da0ed927337fd8d1b6ed9da84 /library/cpp/clickhouse/client/base/compressed.h
parent0e69bf615395fdd48ecee032faaec81bc468b0b8 (diff)
downloadydb-44354d0fc55926c1d4510d1d2c9c9f6a1a5e9300.tar.gz
YQ Connector:test INNER JOIN
Diffstat (limited to 'library/cpp/clickhouse/client/base/compressed.h')
-rw-r--r--library/cpp/clickhouse/client/base/compressed.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/library/cpp/clickhouse/client/base/compressed.h b/library/cpp/clickhouse/client/base/compressed.h
new file mode 100644
index 0000000000..d7c628ebb7
--- /dev/null
+++ b/library/cpp/clickhouse/client/base/compressed.h
@@ -0,0 +1,27 @@
+#pragma once
+
+#include "coded.h"
+
+#include <util/memory/tempbuf.h>
+#include <util/stream/zerocopy.h>
+#include <util/stream/mem.h>
+
+namespace NClickHouse {
+ class TCompressedInput: public IZeroCopyInput {
+ public:
+ TCompressedInput(TCodedInputStream* input);
+ ~TCompressedInput();
+
+ protected:
+ size_t DoNext(const void** ptr, size_t len) override;
+
+ bool Decompress();
+
+ private:
+ TCodedInputStream* const Input_;
+
+ TTempBuf Data_;
+ TMemoryInput Mem_;
+ };
+
+}