SigUtil  0.95
Utility modules for modern C++
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
list_deal.hpp File Reference

リスト(コンテナ)操作関数 More...

Go to the source code of this file.

Namespaces

 sig
 
 sig::impl
 

Functions

template<class T , class C = std::vector<T>>
auto sig::replicate (uint n, T const &value) -> C
 値を複製したコンテナを返す More...
 
template<class C >
auto sig::reverse (C &&list) -> typename impl::remove_const_reference< C >::type
 コンテナの要素の順番を逆転させたコンテナを返す More...
 
template<class C , class R = typename impl::remove_const_reference<C>::type, typename std::enable_if<!impl::static_container_traits< R >::exist >::type *& = enabler>
auto sig::merge (C &&list1, C &&list2) -> R
 コンテナの結合(同じコンテナ型) More...
 
template<class R , class C1 , class C2 >
auto sig::impl::merge_impl (C1 &&list1, C2 &&list2) -> R
 
template<class R = void, class C1 , class C2 , class CR1 = typename impl::remove_const_reference<C1>::type, class CR2 = typename impl::remove_const_reference<C2>::type, class RT = typename std::common_type< typename impl::container_traits<CR1>::value_type, typename impl::container_traits<CR2>::value_type >::type, class RR = typename impl::SameIf<R, void, typename impl::remove_const_reference< typename impl::container_traits<CR1>::template rebind<RT>>::type, R >::type, class AT1 = typename impl::forward_element<C1>::type, class AT2 = typename impl::forward_element<C2>::type, typename std::enable_if<!(impl::static_container_traits< CR1 >::exist)>::type *& = enabler>
auto sig::merge (C1 &&list1, C2 &&list2) -> RR
 
template<class R = void, class SC , class C , class SCR = typename impl::remove_const_reference<SC>::type, class CR = typename impl::remove_const_reference<C>::type, class RT = typename std::common_type< typename impl::static_container_traits<SCR>::value_type, typename impl::container_traits<CR>::value_type >::type, class RR = typename impl::SameIf<R, void, typename impl::remove_const_reference< typename impl::container_traits<CR>::template rebind<RT>>::type, R >::type, typename std::enable_if< impl::static_container_traits< SCR >::exist &&(!impl::static_container_traits< CR >::exist)>::type *& = enabler>
auto sig::merge (SC &&list1, C &&list2) -> RR
 
template<class R = void, class SC1 , class SC2 , class SCR1 = typename impl::remove_const_reference<SC1>::type, class SCR2 = typename impl::remove_const_reference<SC2>::type, class RT = typename std::common_type< typename impl::static_container_traits<SCR1>::value_type, typename impl::static_container_traits<SCR2>::value_type >::type, class RR = typename impl::SameIf<R, void, typename impl::static_container_traits<SCR1>::template rebind_t<RT, impl::plus_t<impl::static_container_traits<SCR1>::size, impl::static_container_traits<SCR2>::size>::value>, R >::type, typename std::enable_if< impl::static_container_traits< SCR1 >::exist &&impl::static_container_traits< SCR2 >::exist >::type *& = enabler>
auto sig::merge (SC1 &&list1, SC2 &&list2) -> RR
 
template<class C , class CR = typename impl::remove_const_reference<C>::type>
auto sig::take (uint n, C &&list) -> CR
 コンテナの先頭からn個の要素を取り出す More...
 
template<class C , class CR = typename impl::remove_const_reference<C>::type>
auto sig::drop (uint n, C &&list) -> CR
 コンテナの先頭からn個を削除したコンテナを返す More...
 

Detailed Description

リスト(コンテナ)操作関数

Definition in file list_deal.hpp.