@Override
    default <V> ToBoolean<V> compose(Function<? super V, ? extends T> before) {
        @SuppressWarnings("unchecked")
        final Function<V, T> casted = (Function<V, T>) before;
        return ComposedUtil.composeToBoolean(casted, this);
    }
{@inheritDoc}
<p>
{@code ToBoolean} is a bit special when it comes to the
{@code compose()}-method. If the {@code before} method returns
{@code null}, the composed expression will return {@code false}. This is
to remain compatible with how Speedment handles predicates in streams.
To get a {@code ToBooleanNullable} that acts as you might expect, instead
use {@link #compose}

@param before the function to apply before this function is applied
@param <V>  the input type of the {@code before} function
@return  the composed expression
runtime-parent/runtime-compute/src/main/java/com/speedment/runtime/compute/ToBoolean.java