docs: public static boolean isAssignable(final Class<?> lhsType, final Class<?> rhsType) {
          final boolean assignable;
          if (lhsType.isAssignableFrom(rhsType)) {
              assignable = true;
          } else if (lhsType.isPrimitive()) {
              final Class<?> resolvedPrimitive = wrapperTypeToPrimitiveMap.get(rhsType);
              assignable = (resolvedPrimitive != null && lhsType.equals(resolvedPrimitive));
          } else {
              final Class<?> resolvedWrapper = primitiveTypeToWrapperMap.get(rhsType);
              assignable = (resolvedWrapper != null && lhsType.isAssignableFrom(resolvedWrapper));
          }
          return assignable;
      }