Class Jvm.Support<V>

java.lang.Object
com.diffplug.spotless.Jvm.Support<V>
Type Parameters:
V - Version type of formatter
Enclosing class:
Jvm

public static class Jvm.Support<V> extends Object
Utility to map constraints of formatter to this JVM
  • Method Details

    • add

      public Jvm.Support<V> add(int minimumJvmVersion, V maxFormatterVersion)
      Add maximum supported formatter version
      Parameters:
      minimumJvmVersion - Minimum Java version required
      maxFormatterVersion - Maximum formatter version supported by the Java version
      Returns:
      this
    • addMin

      public Jvm.Support<V> addMin(int minimumJvmVersion, V minFormatterVersion)
    • getRecommendedFormatterVersion

      @Nullable public V getRecommendedFormatterVersion()
      Returns:
      Highest formatter version recommended for this JVM (null, if JVM not supported)
    • getMinimumRequiredFormatterVersion

      @Nullable public V getMinimumRequiredFormatterVersion()
    • assertFormatterSupported

      public void assertFormatterSupported(V formatterVersion)
      Assert the formatter is supported
      Parameters:
      formatterVersion - Formatter version
      Throws:
      IllegalArgumentException - if formatterVersion not supported
    • suggestLaterVersionOnError

      public FormatterFunc suggestLaterVersionOnError(V formatterVersion, FormatterFunc originalFunc)
      Suggest to use a different formatter version if formatting fails
      Parameters:
      formatterVersion - Formatter version
      originalFunc - Formatter function
      Returns:
      Wrapped formatter function. Adding hint about later versions to exceptions.
    • toString

      public String toString()
      Overrides:
      toString in class Object