private static boolean isAssignable(final Class<?>[] as, final Class<?>[] bs) {
        if (as == null && bs == null) {
            return true;
        }

        if (as == null || bs == null) {
            return false;
        }

        if (as.length != bs.length) {
            return false;
        }

        for (int i = 0; i < as.length; i++) {
            if (!isAssignable(as[i], bs[i])) {
                return false;
            }
        }

        return true;
    }
Returns true if all the classes supplied as a's can be assigned
to the classes supplied as b's
core/src/main/java/com/github/dozermapper/core/util/BridgedMethodFinder.java