| 4120 | |
| 4121 | template<typename C, typename T> |
| 4122 | struct BoundBinaryFunction : IArgFunction<C>{ |
| 4123 | BoundBinaryFunction( void (*_function)( C&, T ) ) : function( _function ) {} |
| 4124 | virtual void set( C& obj, std::string const& stringValue ) const { |
| 4125 | typename RemoveConstRef<T>::type value; |
| 4126 | convertInto( stringValue, value ); |
| 4127 | function( obj, value ); |
| 4128 | } |
| 4129 | virtual void setFlag( C& obj ) const { |
| 4130 | typename RemoveConstRef<T>::type value; |
| 4131 | convertInto( true, value ); |
| 4132 | function( obj, value ); |
| 4133 | } |
| 4134 | virtual bool takesArg() const { return !IsBool<T>::value; } |
| 4135 | virtual IArgFunction<C>* clone() const { return new BoundBinaryFunction( *this ); } |
| 4136 | void (*function)( C&, T ); |
| 4137 | }; |
| 4138 | |
| 4139 | } // namespace Detail |
| 4140 |
nothing calls this directly
no outgoing calls
no test coverage detected