userver: storages::postgres::Range< T > Class Template Reference
⚠️ This is the documentation for an old userver version. Click here to switch to the latest version.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
storages::postgres::Range< T > Class Template Reference

Public Types

using OptionalValue = std::optional< T >
 

Public Member Functions

 Range ()=default
 Empty range.
 
 Range (UnboundedType, UnboundedType) noexcept
 Unbounded range.
 
template<typename U , typename = std::enable_if_t< std::is_convertible_v<std::decay_t<U>, T>>>
 Range (U &&lower, U &&upper, RangeBounds bounds=RangeBound::kLower)
 Bounded range.
 
template<typename U , typename = std::enable_if_t< std::is_convertible_v<std::decay_t<U>, T>>>
 Range (U &&lower, UnboundedType ub, RangeBounds bounds=RangeBound::kLower) noexcept(kNothrowValueCopy)
 Range with a lower bound.
 
template<typename U , typename = std::enable_if_t< std::is_convertible_v<std::decay_t<U>, T>>>
 Range (UnboundedType ub, U &&upper, RangeBounds bounds=RangeBound::kNone) noexcept(kNothrowValueCopy)
 Range with an upper bound.
 
 Range (const OptionalValue &lower, const OptionalValue &upper, RangeBounds bounds)
 
template<typename U , typename = std::enable_if_t<std::is_convertible_v<U, T>>>
 Range (const Range< U > &rhs)
 
bool operator== (const Range &rhs) const
 
bool operator!= (const Range &rhs) const
 
bool Empty () const
 
void Clear ()
 Make the range empty.
 
bool HasLowerBound () const
 
bool HasUpperBound () const
 
const OptionalValue & GetLowerBound () const
 Get the lower bound.
 
const OptionalValue & GetUpperBound () const
 Get the upper bound.
 
bool IsLowerBoundIncluded () const
 
bool IsUpperBoundIncluded () const
 

Detailed Description

template<typename T>
class storages::postgres::Range< T >

Definition at line 106 of file range_types.hpp.

Member Typedef Documentation

◆ OptionalValue

template<typename T >
using storages::postgres::Range< T >::OptionalValue = std::optional<T>

Definition at line 116 of file range_types.hpp.

Constructor & Destructor Documentation

◆ Range() [1/6]

template<typename T >
storages::postgres::Range< T >::Range ( UnboundedType  ,
UnboundedType   
)
inlinenoexcept

Unbounded range.

Definition at line 122 of file range_types.hpp.

◆ Range() [2/6]

template<typename T >
template<typename U , typename >
storages::postgres::Range< T >::Range ( U &&  lower,
U &&  upper,
RangeBounds  bounds = RangeBound::kLower 
)

Bounded range.

Definition at line 527 of file range_types.hpp.

◆ Range() [3/6]

template<typename T >
template<typename U , typename >
storages::postgres::Range< T >::Range ( U &&  lower,
UnboundedType  ub,
RangeBounds  bounds = RangeBound::kLower 
)
noexcept

Range with a lower bound.

Definition at line 537 of file range_types.hpp.

◆ Range() [4/6]

template<typename T >
template<typename U , typename >
storages::postgres::Range< T >::Range ( UnboundedType  ub,
U &&  upper,
RangeBounds  bounds = RangeBound::kNone 
)
noexcept

Range with an upper bound.

Definition at line 543 of file range_types.hpp.

◆ Range() [5/6]

template<typename T >
storages::postgres::Range< T >::Range ( const OptionalValue &  lower,
const OptionalValue &  upper,
RangeBounds  bounds 
)

Definition at line 548 of file range_types.hpp.

◆ Range() [6/6]

template<typename T >
template<typename U , typename >
storages::postgres::Range< T >::Range ( const Range< U > &  rhs)

Convert from a range of different type.

Intentionally implicit

Definition at line 554 of file range_types.hpp.

Member Function Documentation

◆ Clear()

template<typename T >
void storages::postgres::Range< T >::Clear ( )
inline

Make the range empty.

Definition at line 158 of file range_types.hpp.

◆ Empty()

template<typename T >
bool storages::postgres::Range< T >::Empty ( ) const
inline

Definition at line 155 of file range_types.hpp.

◆ GetLowerBound()

template<typename T >
const OptionalValue & storages::postgres::Range< T >::GetLowerBound ( ) const
inline

Get the lower bound.

Definition at line 168 of file range_types.hpp.

◆ GetUpperBound()

template<typename T >
const OptionalValue & storages::postgres::Range< T >::GetUpperBound ( ) const
inline

Get the upper bound.

Definition at line 176 of file range_types.hpp.

◆ HasLowerBound()

template<typename T >
bool storages::postgres::Range< T >::HasLowerBound ( ) const
inline

Definition at line 160 of file range_types.hpp.

◆ HasUpperBound()

template<typename T >
bool storages::postgres::Range< T >::HasUpperBound ( ) const
inline

Definition at line 163 of file range_types.hpp.

◆ IsLowerBoundIncluded()

template<typename T >
bool storages::postgres::Range< T >::IsLowerBoundIncluded ( ) const
inline

Definition at line 183 of file range_types.hpp.

◆ IsUpperBoundIncluded()

template<typename T >
bool storages::postgres::Range< T >::IsUpperBoundIncluded ( ) const
inline

Definition at line 186 of file range_types.hpp.

◆ operator!=()

template<typename T >
bool storages::postgres::Range< T >::operator!= ( const Range< T > &  rhs) const
inline

Definition at line 153 of file range_types.hpp.

◆ operator==()

template<typename T >
bool storages::postgres::Range< T >::operator== ( const Range< T > &  rhs) const

Definition at line 557 of file range_types.hpp.

Friends And Related Symbol Documentation

◆ Range

template<typename T >
template<typename U >
friend class Range
friend

Definition at line 192 of file range_types.hpp.


The documentation for this class was generated from the following file: