MCPcopy Create free account
hub / github.com/boostorg/parser / action_assignable_to_val_apply

Function action_assignable_to_val_apply

include/boost/parser/parser.hpp:4654–4678  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4652
4653 template<typename Action, typename Attribute, typename Context>
4654 constexpr auto action_assignable_to_val_apply()
4655 {
4656 if constexpr (is_nope_v<decltype(*std::declval<Context>().val_)>) {
4657 return false;
4658 } else if constexpr (!is_tuple<remove_cv_ref_t<Attribute>>{}) {
4659 return false;
4660 } else if constexpr (tuple_size_<remove_cv_ref_t<Attribute>> < 2) {
4661 return false;
4662 } else if constexpr (!is_detected_v<
4663 action_apply_call_expr,
4664 Action,
4665 Attribute>) {
4666 return false;
4667 } else if constexpr (std::is_same_v<
4668 action_apply_call_expr<Action, Attribute>,
4669 void>) {
4670 return false;
4671 } else {
4672 return is_detected_v<
4673 action_assignable_to_val_apply_expr,
4674 Action,
4675 Attribute,
4676 Context>;
4677 }
4678 }
4679
4680 template<typename Context, typename TagType>
4681 constexpr bool in_recursion =

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected