| 7081 | |
| 7082 | template<typename L> |
| 7083 | struct BoundLambda : BoundValueRefBase { |
| 7084 | L m_lambda; |
| 7085 | |
| 7086 | static_assert( UnaryLambdaTraits<L>::isValid, "Supplied lambda must take exactly one argument" ); |
| 7087 | explicit BoundLambda( L const &lambda ) : m_lambda( lambda ) {} |
| 7088 | |
| 7089 | auto setValue( std::string const &arg ) -> ParserResult override { |
| 7090 | return invokeLambda<typename UnaryLambdaTraits<L>::ArgType>( m_lambda, arg ); |
| 7091 | } |
| 7092 | }; |
| 7093 | |
| 7094 | template<typename L> |
| 7095 | struct BoundFlagLambda : BoundFlagRefBase { |
nothing calls this directly
no outgoing calls
no test coverage detected