Информация об изменениях

Сообщение Re[4]: Можно ли записать читабельнее? от 10.04.2023 12:50

Изменено 10.04.2023 12:59 rg45

Re[4]: Можно ли записать читабельнее?
Здравствуйте, Кодт, Вы писали:

К>Переписал свой последовательный overloaded на нём.

К>https://gcc.godbolt.org/z/W6PW6j1nb

Еще вот какой у меня вопрос возник: в случае, если подходящий обработчик не найден, то возникнет ошибка компиляции:

    decltype(auto) call_(index_t<LAST> index, auto&&... x) const IMPLICITLY(std::get<index.value>(funs)(FWD(x)...))


Это намеренно так сделано? Не лучше ли было бы в этом случае просто ничего не делать:

    decltype(auto) call_(index_t<LAST + 1>, auto&&...) const {} // Пустой обработчик для LAST + 1


Тогда и необходимость в заглушке def(...) отпала бы, и подход работал бы в т.ч. и для пустого множества обработчиков, что расширило бы возможности его применения в различного рода обобщенных операциях.
Re[4]: Можно ли записать читабельнее?
Здравствуйте, Кодт, Вы писали:

К>Переписал свой последовательный overloaded на нём.

К>https://gcc.godbolt.org/z/W6PW6j1nb

Еще вот какой у меня вопрос возник: в случае, если подходящий обработчик не найден, то возникнет ошибка компиляции:

    decltype(auto) call_(index_t<LAST> index, auto&&... x) const IMPLICITLY(std::get<index.value>(funs)(FWD(x)...))


Это намеренно так сделано? Не лучше ли было бы в этом случае просто ничего не делать:

    void call_(index_t<LAST + 1>, auto&&...) const {} // Пустой обработчик для LAST + 1


Тогда и необходимость в заглушке def(...) отпала бы, и подход работал бы в т.ч. и для пустого множества обработчиков, что расширило бы возможности его применения в различного рода обобщенных операциях.