Solution to the problem
In inputs<...>::in()replace
getter<N>::current_type::_in(t, pin_tag<N>());
by
this->_in(t, pin_tag<N>());
, inputs_base,
using base_type::_in;
.
.
_in " ", getter<N>::current_type. this->_in(...) .
_in ; using . , _in . .
, std:: tuple_element (, ) getter. , , getter inputs (, ) ""; .
,
using inputs_type = inputs<VAR...>;
. inputs , <VAR...>. inputs.
- . inputs_base inputs 51 21 .
inputs_base : _in(). , in() , getter, std::tuple_element. , inputs
template<class... U>
struct inputs : inputs_base<0, U...>
{
template<int N, typename T>
void in(T const& t) { this->_in(t, pin_tag<N>()); }
};
, _in void , const. . .
- . . test :
struct test : overload<void(int), void(bool)>
, . int bool; const&.