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

[desuructive changes] container traits new interface [破壊的変更]

This commit is contained in:
bolero-MURAKAMI 2012-03-31 16:24:13 +09:00
parent 52a2178ac1
commit ad60c8c530
356 changed files with 3183 additions and 3251 deletions

View file

@ -2,8 +2,8 @@
#define SPROUT_OPERATION_FIT_APPEND_HPP
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/append.hpp>
#include <sprout/sub_array.hpp>
@ -17,7 +17,7 @@ namespace sprout {
struct append {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::append<Container, Input>::type
>::internal_type
> type;
@ -30,14 +30,14 @@ namespace sprout {
template<typename Container, typename Input>
SPROUT_CONSTEXPR inline typename sprout::fit::result_of::append<Container, Input>::type append(
Container const& cont,
typename sprout::fixed_container_traits<Container>::const_iterator pos,
typename sprout::container_traits<Container>::const_iterator pos,
Input const& input
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::append(cont, pos, input)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) + sprout::size(input)
sprout::get_internal(sprout::fixed::append(cont, pos, input)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) + sprout::size(input)
);
}
//
@ -46,14 +46,14 @@ namespace sprout {
template<typename Container, typename Input>
SPROUT_CONSTEXPR inline typename sprout::fit::result_of::append<Container, Input>::type append(
Container const& cont,
typename sprout::fixed_container_traits<Container>::difference_type pos,
typename sprout::container_traits<Container>::difference_type pos,
Input const& input
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::append(cont, pos, input)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) + sprout::size(input)
sprout::get_internal(sprout::fixed::append(cont, pos, input)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) + sprout::size(input)
);
}
} // namespace fit

View file

@ -2,8 +2,8 @@
#define SPROUT_OPERATION_FIT_APPEND_BACK_HPP
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/append_back.hpp>
#include <sprout/sub_array.hpp>
@ -16,7 +16,7 @@ namespace sprout {
template<typename Container, typename Input>
struct append_back {
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::append_back<Container, Input>::type
>::internal_type
> type;
@ -33,9 +33,9 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::append_back(cont, input)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) + sprout::size(input)
sprout::get_internal(sprout::fixed::append_back(cont, input)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) + sprout::size(input)
);
}
} // namespace fit

View file

@ -2,8 +2,8 @@
#define SPROUT_OPERATION_FIT_APPEND_FRONT_HPP
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/append_front.hpp>
#include <sprout/sub_array.hpp>
@ -16,7 +16,7 @@ namespace sprout {
template<typename Container, typename Input>
struct append_front {
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::append_front<Container, Input>::type
>::internal_type
> type;
@ -33,9 +33,9 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::append_front(cont, input)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) + sprout::size(input)
sprout::get_internal(sprout::fixed::append_front(cont, input)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) + sprout::size(input)
);
}
} // namespace fit

View file

@ -3,8 +3,8 @@
#include <cstddef>
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/erase.hpp>
#include <sprout/sub_array.hpp>
@ -18,7 +18,7 @@ namespace sprout {
struct erase {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::erase<Container>::type
>::internal_type
> type;
@ -31,13 +31,13 @@ namespace sprout {
template<typename Container>
SPROUT_CONSTEXPR inline typename sprout::fit::result_of::erase<Container>::type erase(
Container const& cont,
typename sprout::fixed_container_traits<Container>::const_iterator pos
typename sprout::container_traits<Container>::const_iterator pos
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::erase(cont, pos)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) - 1
sprout::get_internal(sprout::fixed::erase(cont, pos)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) - 1
);
}
//
@ -46,13 +46,13 @@ namespace sprout {
template<typename Container>
SPROUT_CONSTEXPR inline typename sprout::fit::result_of::erase<Container>::type erase(
Container const& cont,
typename sprout::fixed_container_traits<Container>::difference_type pos
typename sprout::container_traits<Container>::difference_type pos
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::erase(cont, pos)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) - 1
sprout::get_internal(sprout::fixed::erase(cont, pos)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) - 1
);
}
} // namespace fit

View file

@ -3,8 +3,8 @@
#include <cstddef>
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/erase_n.hpp>
#include <sprout/sub_array.hpp>
@ -18,7 +18,7 @@ namespace sprout {
struct erase_n {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::erase_n<N, Container>::type
>::internal_type
> type;
@ -31,13 +31,13 @@ namespace sprout {
template<std::size_t N, typename Container>
SPROUT_CONSTEXPR inline typename sprout::fit::result_of::erase_n<N, Container>::type erase_n(
Container const& cont,
typename sprout::fixed_container_traits<Container>::const_iterator pos
typename sprout::container_traits<Container>::const_iterator pos
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::erase_n<N>(cont, pos)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) - 1
sprout::get_internal(sprout::fixed::erase_n<N>(cont, pos)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) - 1
);
}
//
@ -46,13 +46,13 @@ namespace sprout {
template<std::size_t N, typename Container>
SPROUT_CONSTEXPR inline typename sprout::fit::result_of::erase_n<N, Container>::type erase_n(
Container const& cont,
typename sprout::fixed_container_traits<Container>::difference_type pos
typename sprout::container_traits<Container>::difference_type pos
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::erase_n<N>(cont, pos)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) - 1
sprout::get_internal(sprout::fixed::erase_n<N>(cont, pos)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) - 1
);
}
} // namespace fit

View file

@ -3,8 +3,8 @@
#include <cstddef>
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/insert.hpp>
#include <sprout/sub_array.hpp>
@ -18,7 +18,7 @@ namespace sprout {
struct insert {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::insert<Container, T, Values...>::type
>::internal_type
> type;
@ -31,15 +31,15 @@ namespace sprout {
template<typename Container, typename T, typename... Values>
SPROUT_CONSTEXPR inline typename sprout::fit::result_of::insert<Container, T, Values...>::type insert(
Container const& cont,
typename sprout::fixed_container_traits<Container>::const_iterator pos,
typename sprout::container_traits<Container>::const_iterator pos,
T const& v,
Values const&... values
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::insert(cont, pos, v, values...)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) + 1 + sizeof...(Values)
sprout::get_internal(sprout::fixed::insert(cont, pos, v, values...)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) + 1 + sizeof...(Values)
);
}
//
@ -48,15 +48,15 @@ namespace sprout {
template<typename Container, typename T, typename... Values>
SPROUT_CONSTEXPR inline typename sprout::fit::result_of::insert<Container, T, Values...>::type insert(
Container const& cont,
typename sprout::fixed_container_traits<Container>::difference_type pos,
typename sprout::container_traits<Container>::difference_type pos,
T const& v,
Values const&... values
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::insert(cont, pos, v, values...)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) + 1 + sizeof...(Values)
sprout::get_internal(sprout::fixed::insert(cont, pos, v, values...)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) + 1 + sizeof...(Values)
);
}
} // namespace fit

View file

@ -3,8 +3,8 @@
#include <cstddef>
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/insert_n.hpp>
#include <sprout/sub_array.hpp>
@ -18,7 +18,7 @@ namespace sprout {
struct insert_n {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::insert_n<N, Container, T, Values...>::type
>::internal_type
> type;
@ -31,15 +31,15 @@ namespace sprout {
template<std::size_t N, typename Container, typename T, typename... Values>
SPROUT_CONSTEXPR inline typename sprout::fit::result_of::insert_n<N, Container, T, Values...>::type insert_n(
Container const& cont,
typename sprout::fixed_container_traits<Container>::const_iterator pos,
typename sprout::container_traits<Container>::const_iterator pos,
T const& v,
Values const&... values
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::insert_n<N>(cont, pos, v, values...)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) + (1 + sizeof...(Values)) * N
sprout::get_internal(sprout::fixed::insert_n<N>(cont, pos, v, values...)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) + (1 + sizeof...(Values)) * N
);
}
//
@ -48,15 +48,15 @@ namespace sprout {
template<std::size_t N, typename Container, typename T, typename... Values>
SPROUT_CONSTEXPR inline typename sprout::fit::result_of::insert_n<N, Container, T, Values...>::type insert_n(
Container const& cont,
typename sprout::fixed_container_traits<Container>::difference_type pos,
typename sprout::container_traits<Container>::difference_type pos,
T const& v,
Values const&... values
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::insert_n<N>(cont, pos, v, values...)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) + (1 + sizeof...(Values)) * N
sprout::get_internal(sprout::fixed::insert_n<N>(cont, pos, v, values...)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) + (1 + sizeof...(Values)) * N
);
}
} // namespace fit

View file

@ -3,8 +3,8 @@
#include <cstddef>
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/pop_back.hpp>
#include <sprout/sub_array.hpp>
@ -18,7 +18,7 @@ namespace sprout {
struct pop_back {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::pop_back<Container>::type
>::internal_type
> type;
@ -34,9 +34,9 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::pop_back(cont)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) - 1
sprout::get_internal(sprout::fixed::pop_back(cont)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) - 1
);
}
} // namespace fit

View file

@ -3,8 +3,8 @@
#include <cstddef>
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/pop_back_n.hpp>
#include <sprout/sub_array.hpp>
@ -18,7 +18,7 @@ namespace sprout {
struct pop_back_n {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::pop_back_n<N, Container>::type
>::internal_type
> type;
@ -34,9 +34,9 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::pop_back_n<N>(cont)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) - N
sprout::get_internal(sprout::fixed::pop_back_n<N>(cont)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) - N
);
}
} // namespace fit

View file

@ -3,8 +3,8 @@
#include <cstddef>
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/pop_front.hpp>
#include <sprout/sub_array.hpp>
@ -18,7 +18,7 @@ namespace sprout {
struct pop_front {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::pop_front<Container>::type
>::internal_type
> type;
@ -34,9 +34,9 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::pop_front(cont)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) - 1
sprout::get_internal(sprout::fixed::pop_front(cont)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) - 1
);
}
} // namespace fit

View file

@ -3,8 +3,8 @@
#include <cstddef>
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/pop_front_n.hpp>
#include <sprout/sub_array.hpp>
@ -18,7 +18,7 @@ namespace sprout {
struct pop_front_n {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::pop_front_n<N, Container>::type
>::internal_type
> type;
@ -34,9 +34,9 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::pop_front_n<N>(cont)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) - N
sprout::get_internal(sprout::fixed::pop_front_n<N>(cont)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) - N
);
}
} // namespace fit

View file

@ -2,8 +2,8 @@
#define SPROUT_OPERATION_FIT_PUSH_BACK_HPP
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/push_back.hpp>
#include <sprout/sub_array.hpp>
@ -17,7 +17,7 @@ namespace sprout {
struct push_back {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::push_back<Container, T, Values...>::type
>::internal_type
> type;
@ -35,9 +35,9 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::push_back(cont, v, values...)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) + 1 + sizeof...(Values)
sprout::get_internal(sprout::fixed::push_back(cont, v, values...)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) + 1 + sizeof...(Values)
);
}
} // namespace fit

View file

@ -2,8 +2,8 @@
#define SPROUT_OPERATION_FIT_PUSH_BACK_N_HPP
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/push_back_n.hpp>
#include <sprout/sub_array.hpp>
@ -17,7 +17,7 @@ namespace sprout {
struct push_back_n {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::push_back_n<N, Container, T, Values...>::type
>::internal_type
> type;
@ -35,9 +35,9 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::push_back_n<N>(cont, v, values...)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) + (1 + sizeof...(Values)) * N
sprout::get_internal(sprout::fixed::push_back_n<N>(cont, v, values...)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) + (1 + sizeof...(Values)) * N
);
}
} // namespace fit

View file

@ -2,8 +2,8 @@
#define SPROUT_OPERATION_FIT_PUSH_FRONT_HPP
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/push_front.hpp>
#include <sprout/sub_array.hpp>
@ -17,7 +17,7 @@ namespace sprout {
struct push_front {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::push_front<Container, T, Values...>::type
>::internal_type
> type;
@ -35,9 +35,9 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::push_front(cont, v, values...)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) + 1 + sizeof...(Values)
sprout::get_internal(sprout::fixed::push_front(cont, v, values...)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) + 1 + sizeof...(Values)
);
}
} // namespace fit

View file

@ -2,8 +2,8 @@
#define SPROUT_OPERATION_FIT_PUSH_FRONT_N_HPP
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/push_front_n.hpp>
#include <sprout/sub_array.hpp>
@ -17,7 +17,7 @@ namespace sprout {
struct push_front_n {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::push_front_n<N, Container, T, Values...>::type
>::internal_type
> type;
@ -35,9 +35,9 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::push_front_n<N>(cont, v, values...)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont) + (1 + sizeof...(Values)) * N
sprout::get_internal(sprout::fixed::push_front_n<N>(cont, v, values...)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont) + (1 + sizeof...(Values)) * N
);
}
} // namespace fit

View file

@ -2,8 +2,8 @@
#define SPROUT_OPERATION_FIT_REALIGN_HPP
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/realign.hpp>
#include <sprout/sub_array.hpp>
@ -17,7 +17,7 @@ namespace sprout {
struct realign {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::realign<Container>::type
>::internal_type
> type;
@ -34,7 +34,7 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::realign(cont, v)),
sprout::get_internal(sprout::fixed::realign(cont, v)),
0,
sprout::size(cont)
);
@ -49,7 +49,7 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::realign(cont)),
sprout::get_internal(sprout::fixed::realign(cont)),
0,
sprout::size(cont)
);

View file

@ -2,8 +2,8 @@
#define SPROUT_OPERATION_FIT_REALIGN_TO_HPP
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/realign_to.hpp>
#include <sprout/sub_array.hpp>
@ -17,7 +17,7 @@ namespace sprout {
struct realign_to {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::realign_to<Result, Container>::type
>::internal_type
> type;
@ -34,7 +34,7 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::realign_to<Result>(cont, v)),
sprout::get_internal(sprout::fixed::realign_to<Result>(cont, v)),
0,
sprout::size(cont)
);
@ -49,7 +49,7 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::realign_to<Result>(cont)),
sprout::get_internal(sprout::fixed::realign_to<Result>(cont)),
0,
sprout::size(cont)
);

View file

@ -3,8 +3,8 @@
#include <cstddef>
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/resize.hpp>
#include <sprout/sub_array.hpp>
@ -18,7 +18,7 @@ namespace sprout {
struct resize {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::resize<N, Container>::type
>::internal_type
> type;
@ -35,9 +35,9 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::resize<N>(cont, v)),
sprout::get_internal(sprout::fixed::resize<N>(cont, v)),
0,
sprout::fixed_container_traits<typename sprout::fit::result_of::resize<N, Container>::type>::fixed_size
sprout::container_traits<typename sprout::fit::result_of::resize<N, Container>::type>::static_size
);
}
@ -50,9 +50,9 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::resize<N>(cont)),
sprout::get_internal(sprout::fixed::resize<N>(cont)),
0,
sprout::fixed_container_traits<typename sprout::fit::result_of::resize<N, Container>::type>::fixed_size
sprout::container_traits<typename sprout::fit::result_of::resize<N, Container>::type>::static_size
);
}
} // namespace fit

View file

@ -3,8 +3,8 @@
#include <cstddef>
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/resize_backward.hpp>
#include <sprout/sub_array.hpp>
@ -18,7 +18,7 @@ namespace sprout {
struct resize_backward {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::resize_backward<N, Container>::type
>::internal_type
> type;
@ -35,9 +35,9 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::resize_backward<N>(cont, v)),
sprout::get_internal(sprout::fixed::resize_backward<N>(cont, v)),
0,
sprout::fixed_container_traits<typename sprout::fit::result_of::resize_backward<N, Container>::type>::fixed_size
sprout::container_traits<typename sprout::fit::result_of::resize_backward<N, Container>::type>::static_size
);
}
@ -50,9 +50,9 @@ namespace sprout {
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::resize_backward<N>(cont)),
sprout::get_internal(sprout::fixed::resize_backward<N>(cont)),
0,
sprout::fixed_container_traits<typename sprout::fit::result_of::resize_backward<N, Container>::type>::fixed_size
sprout::container_traits<typename sprout::fit::result_of::resize_backward<N, Container>::type>::static_size
);
}
} // namespace fit

View file

@ -3,8 +3,8 @@
#include <cstddef>
#include <sprout/config.hpp>
#include <sprout/fixed_container/traits.hpp>
#include <sprout/fixed_container/functions.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/operation/fixed/set.hpp>
#include <sprout/sub_array.hpp>
@ -18,7 +18,7 @@ namespace sprout {
struct set {
public:
typedef sprout::sub_array<
typename sprout::fixed_container_traits<
typename sprout::container_traits<
typename sprout::fixed::result_of::set<Container, T>::type
>::internal_type
> type;
@ -31,14 +31,14 @@ namespace sprout {
template<typename Container, typename T>
SPROUT_CONSTEXPR inline typename sprout::fit::result_of::set<Container, T>::type set(
Container const& cont,
typename sprout::fixed_container_traits<Container>::const_iterator pos,
typename sprout::container_traits<Container>::const_iterator pos,
T const& v
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::set(cont, pos, v)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont)
sprout::get_internal(sprout::fixed::set(cont, pos, v)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont)
);
}
//
@ -47,14 +47,14 @@ namespace sprout {
template<typename Container, typename T>
SPROUT_CONSTEXPR inline typename sprout::fit::result_of::set<Container, T>::type set(
Container const& cont,
typename sprout::fixed_container_traits<Container>::difference_type pos,
typename sprout::container_traits<Container>::difference_type pos,
T const& v
)
{
return sprout::sub_copy(
sprout::get_fixed(sprout::fixed::set(cont, pos, v)),
sprout::fixed_begin_offset(cont),
sprout::fixed_end_offset(cont)
sprout::get_internal(sprout::fixed::set(cont, pos, v)),
sprout::internal_begin_offset(cont),
sprout::internal_end_offset(cont)
);
}
} // namespace fit