code: @GwtIncompatible("incompatible method")
    public static void isInstanceOf(final Class<?> type, @Nullable final Object obj,
        final Supplier<String> messageSupplier) {
      Assert.notNull(type, "Type to check against must not be null");
      if (!type.isInstance(obj)) {
        Assert.instanceCheckFailed(type, obj, Assert.nullSafeGet(messageSupplier));
      }
    }
docs: Assert that the provided object is an instance of the provided class.
  
  <pre class="code">
  Assert.instanceOf(Foo.class, foo, () -&gt; "Processing " + Foo.class.getSimpleName() + ":");
  </pre>
  
  @param type the type to check against
  @param obj the object to check
  @param messageSupplier a supplier for the exception message to use if the assertion fails. See
  {@link #isInstanceOf(Class, Object, String)} for details.
  @throws IllegalArgumentException if the object is not an instance of type
  @since 5.0