momo  3.11
momo::internal::ContainerAssignerStd Class Reference

#include <Utility.h>

Public Types

template<typename Container , typename Allocator = typename Container::allocator_type>
using IsNothrowMoveAssignable = BoolConstant< std::is_empty< Allocator >::value||std::allocator_traits< Allocator >::propagate_on_container_move_assignment::value >
 

Static Public Member Functions

template<typename Container >
static Container & Move (Container &&srcCont, Container &dstCont) noexcept(IsNothrowMoveAssignable< Container >::value)
 
template<typename Container >
static Container & Copy (const Container &srcCont, Container &dstCont)
 
template<typename Container >
static void Swap (Container &cont1, Container &cont2) noexcept
 

Member Typedef Documentation

◆ IsNothrowMoveAssignable

template<typename Container , typename Allocator = typename Container::allocator_type>
using momo::internal::ContainerAssignerStd::IsNothrowMoveAssignable = BoolConstant<std::is_empty<Allocator>::value || std::allocator_traits<Allocator>::propagate_on_container_move_assignment::value>

Member Function Documentation

◆ Copy()

template<typename Container >
static Container& momo::internal::ContainerAssignerStd::Copy ( const Container &  srcCont,
Container &  dstCont 
)
inlinestatic

◆ Move()

template<typename Container >
static Container& momo::internal::ContainerAssignerStd::Move ( Container &&  srcCont,
Container &  dstCont 
)
inlinestaticnoexcept

◆ Swap()

template<typename Container >
static void momo::internal::ContainerAssignerStd::Swap ( Container &  cont1,
Container &  cont2 
)
inlinestaticnoexcept

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