ClickHouse/src/IO/ReadBufferFromString.h

26 lines
640 B
C++
Raw Normal View History

2011-11-29 18:53:44 +00:00
#pragma once
#include <IO/ReadBufferFromMemory.h>
2011-11-29 18:53:44 +00:00
namespace DB
{
/// Allows to read from std::string-like object.
2017-01-03 01:42:17 +00:00
class ReadBufferFromString : public ReadBufferFromMemory
2011-11-29 18:53:44 +00:00
{
public:
2017-04-16 05:40:17 +00:00
/// std::string or something similar
template <typename S>
2021-04-16 17:49:38 +00:00
explicit ReadBufferFromString(const S & s) : ReadBufferFromMemory(s.data(), s.size()) {}
2011-11-29 18:53:44 +00:00
explicit ReadBufferFromString(std::string_view s) : ReadBufferFromMemory(s.data(), s.size()) {}
};
class ReadBufferFromOwnString : public String, public ReadBufferFromString
{
public:
explicit ReadBufferFromOwnString(const String & s_): String(s_), ReadBufferFromString(*this) {}
};
2011-11-29 18:53:44 +00:00
}