20 namespace protocol_buffers
33 using container_type = std::vector <typename T::value_type>;
36 using value_type =
typename T::value_type;
37 using const_iterator =
typename container_type::const_iterator;
43 : p_tValue {std::move(value)}
52 template <
typename... Args>
54 : default_repeated_value (
55 std::forward <std::tuple <Args...>> (args),
56 static_cast <
make_indices <
sizeof... (Args)>*> (
nullptr))
61 template <
typename... Args,
typename... Indices>
63 : p_tValue{std::forward <Args> (std::get <Indices::value> (args))...}
69 container_type
const&
get ()
const
75 void set (container_type value)
77 p_tValue = std::move(value);
81 container_type& mutate ()
87 ~default_repeated_value () =
default;
90 container_type p_tValue {};
99 typename Specification,
103 std::integral_constant <e_field_type, e_field_type::repeated>,
104 std::integral_constant <uint32_t, Number>>,
106 protocol_buffer_implementation_wrapper <
108 std::integral_constant <uint32_t, Number>,
118 #include <framework/protocol_buffers/repeated.inl>