userver: userver/storages/clickhouse/io/type_traits.hpp Source File
Loading...
Searching...
No Matches
type_traits.hpp
1#pragma once
2
3#include <userver/utils/meta.hpp>
4
5#include <userver/storages/clickhouse/impl/is_decl_complete.hpp>
6#include <userver/storages/clickhouse/io/io_fwd.hpp>
7
8USERVER_NAMESPACE_BEGIN
9
10namespace storages::clickhouse::io::traits {
11
12template <typename T>
13inline constexpr bool kIsMappedToClickhouse =
14 utils::IsDeclComplete<CppToClickhouse<T>>::value;
15
16template <typename T>
17auto Inserter(T& container) {
18 return meta::Inserter(container);
19}
20
21template <typename T>
22inline constexpr bool kIsReservable = meta::kIsReservable<T>;
23
24template <typename T>
25inline constexpr bool kIsSizeable = meta::kIsSizable<T>;
26
27template <typename T>
28inline constexpr bool kIsRange = meta::kIsRange<T>;
29
30} // namespace storages::clickhouse::io::traits
31
32USERVER_NAMESPACE_END