userver: userver/storages/postgres/io/strong_typedef.hpp File Reference
Loading...
Searching...
No Matches
strong_typedef.hpp File Reference

Detailed Description

utils::StrongTypedef I/O support

Definition in file strong_typedef.hpp.

Go to the source code of this file.

#include <userver/storages/postgres/exceptions.hpp>
#include <userver/storages/postgres/io/buffer_io.hpp>
#include <userver/storages/postgres/io/buffer_io_base.hpp>
#include <userver/storages/postgres/io/nullable_traits.hpp>
#include <userver/utils/strong_typedef.hpp>
#include <userver/utils/void_t.hpp>
+ This graph shows which files directly or indirectly include this file:

Classes

struct  storages::postgres::io::traits::IsMappedToPg<::utils::StrongTypedef< Tag, T, Ops, Enable > >
 
struct  storages::postgres::io::traits::IsSpecialMapping<::utils::StrongTypedef< Tag, T, Ops, Enable > >
 
struct  storages::postgres::io::traits::IsNullable<::utils::StrongTypedef< Tag, T, Ops, Enable > >
 
struct  storages::postgres::io::traits::GetSetNull<::utils::StrongTypedef< Tag, T, Ops, Enable > >
 
struct  storages::postgres::io::traits::CanUseEnumAsStrongTypedef< T, typename >
 
struct  storages::postgres::io::BufferFormatter<::utils::StrongTypedef< Tag, T, Ops, Enable > >
 
struct  storages::postgres::io::BufferParser<::utils::StrongTypedef< Tag, T, Ops, Enable > >
 
struct  storages::postgres::io::CppToPg< ::utils::StrongTypedef< Tag, T, Ops, Enable >, std::enable_if_t<!traits::kIsStrongTypedefDirectlyMapped< Tag, T, Ops, Enable > &&traits::kIsMappedToPg< T > > >
 
struct  storages::postgres::io::traits::ParserBufferCategory< BufferParser<::utils::StrongTypedef< Tag, T, Ops, Enable > > >
 
struct  storages::postgres::io::traits::Output< T, EnableIfCanUseEnumAsStrongTypedef< T > >
 
struct  storages::postgres::io::traits::Input< T, EnableIfCanUseEnumAsStrongTypedef< T > >
 
struct  storages::postgres::io::traits::IsMappedToPg< T, EnableIfCanUseEnumAsStrongTypedef< T > >
 
struct  storages::postgres::io::traits::IsSpecialMapping< T, EnableIfCanUseEnumAsStrongTypedef< T > >
 
struct  storages::postgres::io::CppToPg< T, traits::EnableIfCanUseEnumAsStrongTypedef< T > >
 

Namespaces

namespace  storages
 Components, clients and helpers for different databases and storages.
 
namespace  storages::postgres
 Top namespace for uPg driver.
 
namespace  storages::postgres::io
 uPg input-output.
 
namespace  storages::postgres::io::traits
 uPg input-output traits.
 

Typedefs

template<typename T >
using storages::postgres::io::traits::EnableIfCanUseEnumAsStrongTypedef = std::enable_if_t<impl::CheckCanUseEnumAsStrongTypedef<T>()>
 

Variables

template<typename Tag , typename T , ::utils::StrongTypedefOps Ops, typename Enable >
constexpr bool storages::postgres::io::traits::kIsStrongTypedefDirectlyMapped