mirror of
				https://github.com/catchorg/Catch2.git
				synced 2025-10-31 20:27:11 +01:00 
			
		
		
		
	Support explicit operator bool
Fix for issue 596
This commit is contained in:
		 Sean Middleditch
					Sean Middleditch
				
			
				
					committed by
					
						 Phil Nash
						Phil Nash
					
				
			
			
				
	
			
			
			 Phil Nash
						Phil Nash
					
				
			
						parent
						
							e134da2e10
						
					
				
				
					commit
					3f226c1999
				
			| @@ -52,37 +52,37 @@ namespace Internal { | ||||
|     template<typename T1, typename T2> | ||||
|     struct Evaluator<T1, T2, IsEqualTo> { | ||||
|         static bool evaluate( T1 const& lhs, T2 const& rhs) { | ||||
|             return opCast( lhs ) ==  opCast( rhs ); | ||||
|             return bool( opCast( lhs ) ==  opCast( rhs ) ); | ||||
|         } | ||||
|     }; | ||||
|     template<typename T1, typename T2> | ||||
|     struct Evaluator<T1, T2, IsNotEqualTo> { | ||||
|         static bool evaluate( T1 const& lhs, T2 const& rhs ) { | ||||
|             return opCast( lhs ) != opCast( rhs ); | ||||
|             return bool( opCast( lhs ) != opCast( rhs ) ); | ||||
|         } | ||||
|     }; | ||||
|     template<typename T1, typename T2> | ||||
|     struct Evaluator<T1, T2, IsLessThan> { | ||||
|         static bool evaluate( T1 const& lhs, T2 const& rhs ) { | ||||
|             return opCast( lhs ) < opCast( rhs ); | ||||
|             return bool( opCast( lhs ) < opCast( rhs ) ); | ||||
|         } | ||||
|     }; | ||||
|     template<typename T1, typename T2> | ||||
|     struct Evaluator<T1, T2, IsGreaterThan> { | ||||
|         static bool evaluate( T1 const& lhs, T2 const& rhs ) { | ||||
|             return opCast( lhs ) > opCast( rhs ); | ||||
|             return bool( opCast( lhs ) > opCast( rhs ) ); | ||||
|         } | ||||
|     }; | ||||
|     template<typename T1, typename T2> | ||||
|     struct Evaluator<T1, T2, IsGreaterThanOrEqualTo> { | ||||
|         static bool evaluate( T1 const& lhs, T2 const& rhs ) { | ||||
|             return opCast( lhs ) >= opCast( rhs ); | ||||
|             return bool( opCast( lhs ) >= opCast( rhs ) ); | ||||
|         } | ||||
|     }; | ||||
|     template<typename T1, typename T2> | ||||
|     struct Evaluator<T1, T2, IsLessThanOrEqualTo> { | ||||
|         static bool evaluate( T1 const& lhs, T2 const& rhs ) { | ||||
|             return opCast( lhs ) <= opCast( rhs ); | ||||
|             return bool( opCast( lhs ) <= opCast( rhs ) ); | ||||
|         } | ||||
|     }; | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user