private <T> String formatUsingFormatterOrDefault( ObjectFormatter<T> formatting, Object o ) {
        return formatting.format( (T) o );
    }
Recursively searches for formatting annotations.

@param visitedTypes used to prevent an endless loop
@param parameterName
jgiven-core/src/main/java/com/tngtech/jgiven/impl/format/ParameterFormattingUtil.java