1
0
Fork 0
mirror of https://github.com/bolero-MURAKAMI/Sprout synced 2025-08-03 12:49:50 +00:00

modify namespace result_of -> results

support C++14 type_traits
This commit is contained in:
bolero-MURAKAMI 2013-11-20 22:04:11 +09:00
parent d386893a74
commit bf0c7021cf
350 changed files with 2628 additions and 1912 deletions

View file

@ -17,7 +17,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// append
//
@ -26,17 +26,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::append<Container, Input>::type
typename sprout::fixed::results::append<Container, Input>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// append
//
template<typename Container, typename Input>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::append<Container, Input>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::append<Container, Input>::type
append(
Container const& cont, typename sprout::container_traits<Container>::const_iterator pos,
Input const& input
@ -49,7 +49,7 @@ namespace sprout {
);
}
template<typename Container, typename Input>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::append<Container, Input>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::append<Container, Input>::type
append(
Container const& cont, typename sprout::container_traits<Container>::difference_type pos,
Input const& input

View file

@ -17,7 +17,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// append_back
//
@ -25,17 +25,17 @@ namespace sprout {
struct append_back {
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::append_back<Container, Input>::type
typename sprout::fixed::results::append_back<Container, Input>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// append_back
//
template<typename Container, typename Input>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::append_back<Container, Input>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::append_back<Container, Input>::type
append_back(Container const& cont, Input const& input) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::append_back(cont, input)),

View file

@ -17,7 +17,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// append_front
//
@ -25,17 +25,17 @@ namespace sprout {
struct append_front {
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::append_front<Container, Input>::type
typename sprout::fixed::results::append_front<Container, Input>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// append_front
//
template<typename Container, typename Input>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::append_front<Container, Input>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::append_front<Container, Input>::type
append_front(Container const& cont, Input const& input) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::append_front(cont, input)),

View file

@ -18,7 +18,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// erase
//
@ -27,17 +27,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::erase<Container>::type
typename sprout::fixed::results::erase<Container>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// erase
//
template<typename Container>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::erase<Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::erase<Container>::type
erase(Container const& cont, typename sprout::container_traits<Container>::const_iterator pos) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::erase(cont, pos)),
@ -46,7 +46,7 @@ namespace sprout {
);
}
template<typename Container>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::erase<Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::erase<Container>::type
erase(Container const& cont, typename sprout::container_traits<Container>::difference_type pos) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::erase(cont, pos)),

View file

@ -18,7 +18,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// erase_n
//
@ -27,17 +27,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::erase_n<N, Container>::type
typename sprout::fixed::results::erase_n<N, Container>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// erase_n
//
template<std::size_t N, typename Container>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::erase_n<N, Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::erase_n<N, Container>::type
erase_n(Container const& cont, typename sprout::container_traits<Container>::const_iterator pos) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::erase_n<N>(cont, pos)),
@ -46,7 +46,7 @@ namespace sprout {
);
}
template<std::size_t N, typename Container>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::erase_n<N, Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::erase_n<N, Container>::type
erase_n(Container const& cont, typename sprout::container_traits<Container>::difference_type pos) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::erase_n<N>(cont, pos)),

View file

@ -18,7 +18,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// insert
//
@ -27,17 +27,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::insert<Container, T, Values...>::type
typename sprout::fixed::results::insert<Container, T, Values...>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// insert
//
template<typename Container, typename T, typename... Values>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::insert<Container, T, Values...>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::insert<Container, T, Values...>::type
insert(
Container const& cont, typename sprout::container_traits<Container>::const_iterator pos,
T const& v, Values const&... values
@ -50,7 +50,7 @@ namespace sprout {
);
}
template<typename Container, typename T, typename... Values>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::insert<Container, T, Values...>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::insert<Container, T, Values...>::type
insert(
Container const& cont, typename sprout::container_traits<Container>::difference_type pos,
T const& v, Values const&... values

View file

@ -18,7 +18,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// insert_n
//
@ -27,17 +27,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::insert_n<N, Container, T, Values...>::type
typename sprout::fixed::results::insert_n<N, Container, T, Values...>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// insert_n
//
template<std::size_t N, typename Container, typename T, typename... Values>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::insert_n<N, Container, T, Values...>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::insert_n<N, Container, T, Values...>::type
insert_n(
Container const& cont, typename sprout::container_traits<Container>::const_iterator pos,
T const& v, Values const&... values
@ -50,7 +50,7 @@ namespace sprout {
);
}
template<std::size_t N, typename Container, typename T, typename... Values>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::insert_n<N, Container, T, Values...>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::insert_n<N, Container, T, Values...>::type
insert_n(
Container const& cont, typename sprout::container_traits<Container>::difference_type pos,
T const& v, Values const&... values

View file

@ -18,7 +18,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// pop_back
//
@ -27,17 +27,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::pop_back<Container>::type
typename sprout::fixed::results::pop_back<Container>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// pop_back
//
template<typename Container>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::pop_back<Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::pop_back<Container>::type
pop_back(Container const& cont) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::pop_back(cont)),

View file

@ -18,7 +18,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// pop_back_n
//
@ -27,17 +27,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::pop_back_n<N, Container>::type
typename sprout::fixed::results::pop_back_n<N, Container>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// pop_back_n
//
template<std::size_t N, typename Container>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::pop_back_n<N, Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::pop_back_n<N, Container>::type
pop_back_n(Container const& cont) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::pop_back_n<N>(cont)),

View file

@ -18,7 +18,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// pop_front
//
@ -27,17 +27,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::pop_front<Container>::type
typename sprout::fixed::results::pop_front<Container>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// pop_front
//
template<typename Container>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::pop_front<Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::pop_front<Container>::type
pop_front(Container const& cont) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::pop_front(cont)),

View file

@ -18,7 +18,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// pop_front_n
//
@ -27,17 +27,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::pop_front_n<N, Container>::type
typename sprout::fixed::results::pop_front_n<N, Container>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// pop_front_n
//
template<std::size_t N, typename Container>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::pop_front_n<N, Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::pop_front_n<N, Container>::type
pop_front_n(Container const& cont) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::pop_front_n<N>(cont)),

View file

@ -17,7 +17,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// push_back
//
@ -26,17 +26,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::push_back<Container, T, Values...>::type
typename sprout::fixed::results::push_back<Container, T, Values...>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// push_back
//
template<typename Container, typename T, typename... Values>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::push_back<Container, T, Values...>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::push_back<Container, T, Values...>::type
push_back(Container const& cont, T const& v, Values const&... values) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::push_back(cont, v, values...)),

View file

@ -17,7 +17,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// push_back_n
//
@ -26,17 +26,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::push_back_n<N, Container, T, Values...>::type
typename sprout::fixed::results::push_back_n<N, Container, T, Values...>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// push_back_n
//
template<std::size_t N, typename Container, typename T, typename... Values>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::push_back_n<N, Container, T, Values...>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::push_back_n<N, Container, T, Values...>::type
push_back_n(Container const& cont, T const& v, Values const&... values) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::push_back_n<N>(cont, v, values...)),

View file

@ -17,7 +17,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// push_front
//
@ -26,17 +26,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::push_front<Container, T, Values...>::type
typename sprout::fixed::results::push_front<Container, T, Values...>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// push_front
//
template<typename Container, typename T, typename... Values>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::push_front<Container, T, Values...>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::push_front<Container, T, Values...>::type
push_front(Container const& cont, T const& v, Values const&... values) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::push_front(cont, v, values...)),

View file

@ -17,7 +17,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// push_front_n
//
@ -26,17 +26,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::push_front_n<N, Container, T, Values...>::type
typename sprout::fixed::results::push_front_n<N, Container, T, Values...>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// push_front_n
//
template<std::size_t N, typename Container, typename T, typename... Values>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::push_front_n<N, Container, T, Values...>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::push_front_n<N, Container, T, Values...>::type
push_front_n(Container const& cont, T const& v, Values const&... values) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::push_front_n<N>(cont, v, values...)),

View file

@ -17,7 +17,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// realign
//
@ -26,17 +26,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::realign<Container>::type
typename sprout::fixed::results::realign<Container>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// realign
//
template<typename Container, typename T>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::realign<Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::realign<Container>::type
realign(Container const& cont, T const& v) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::realign(cont, v)),
@ -45,7 +45,7 @@ namespace sprout {
);
}
template<typename Container>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::realign<Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::realign<Container>::type
realign(Container const& cont) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::realign(cont)),

View file

@ -17,7 +17,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// realign_to
//
@ -26,17 +26,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::realign_to<Result, Container>::type
typename sprout::fixed::results::realign_to<Result, Container>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// realign_to
//
template<typename Result, typename Container, typename T>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::realign_to<Result, Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::realign_to<Result, Container>::type
realign_to(Container const& cont, T const& v) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::realign_to<Result>(cont, v)),
@ -45,7 +45,7 @@ namespace sprout {
);
}
template<typename Result, typename Container>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::realign_to<Result, Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::realign_to<Result, Container>::type
realign_to(Container const& cont) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::realign_to<Result>(cont)),

View file

@ -18,7 +18,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// resize
//
@ -27,31 +27,31 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::resize<N, Container>::type
typename sprout::fixed::results::resize<N, Container>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// resize
//
template<std::size_t N, typename Container, typename T>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::resize<N, Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::resize<N, Container>::type
resize(Container const& cont, T const& v) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::resize<N>(cont, v)),
0,
sprout::container_traits<typename sprout::fit::result_of::resize<N, Container>::type>::static_size
sprout::container_traits<typename sprout::fit::results::resize<N, Container>::type>::static_size
);
}
template<std::size_t N, typename Container>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::resize<N, Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::resize<N, Container>::type
resize(Container const& cont) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::resize<N>(cont)),
0,
sprout::container_traits<typename sprout::fit::result_of::resize<N, Container>::type>::static_size
sprout::container_traits<typename sprout::fit::results::resize<N, Container>::type>::static_size
);
}
} // namespace fit

View file

@ -18,7 +18,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// resize_backward
//
@ -27,31 +27,31 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::resize_backward<N, Container>::type
typename sprout::fixed::results::resize_backward<N, Container>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// resize_backward
//
template<std::size_t N, typename Container, typename T>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::resize_backward<N, Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::resize_backward<N, Container>::type
resize_backward(Container const& cont, T const& v) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::resize_backward<N>(cont, v)),
0,
sprout::container_traits<typename sprout::fit::result_of::resize_backward<N, Container>::type>::static_size
sprout::container_traits<typename sprout::fit::results::resize_backward<N, Container>::type>::static_size
);
}
template<std::size_t N, typename Container>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::resize_backward<N, Container>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::resize_backward<N, Container>::type
resize_backward(Container const& cont) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::resize_backward<N>(cont)),
0,
sprout::container_traits<typename sprout::fit::result_of::resize_backward<N, Container>::type>::static_size
sprout::container_traits<typename sprout::fit::results::resize_backward<N, Container>::type>::static_size
);
}
} // namespace fit

View file

@ -18,7 +18,7 @@
namespace sprout {
namespace fit {
namespace result_of {
namespace results {
//
// set
//
@ -27,17 +27,17 @@ namespace sprout {
public:
typedef sprout::sub_array<
typename sprout::container_traits<
typename sprout::fixed::result_of::set<Container, T>::type
typename sprout::fixed::results::set<Container, T>::type
>::internal_type
> type;
};
} // namespace result_of
} // namespace results
//
// set
//
template<typename Container, typename T>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::set<Container, T>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::set<Container, T>::type
set(Container const& cont, typename sprout::container_traits<Container>::const_iterator pos, T const& v) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::set(cont, pos, v)),
@ -46,7 +46,7 @@ namespace sprout {
);
}
template<typename Container, typename T>
inline SPROUT_CONSTEXPR typename sprout::fit::result_of::set<Container, T>::type
inline SPROUT_CONSTEXPR typename sprout::fit::results::set<Container, T>::type
set(Container const& cont, typename sprout::container_traits<Container>::difference_type pos, T const& v) {
return sprout::sub_copy(
sprout::get_internal(sprout::fixed::set(cont, pos, v)),