getAFunctionReturningBool<T1, T2, T3> method
This helps us make sure we get both the empty and the non-empty case right for anonymous functions.
This helps us make sure we get both the empty and the non-empty case right for anonymous functions.