org.apache.poi.ss.formula

## Enum EvaluationConditionalFormatRule.OperatorEnum

- java.lang.Object
- - java.lang.Enum<EvaluationConditionalFormatRule.OperatorEnum>
  - - org.apache.poi.ss.formula.EvaluationConditionalFormatRule.OperatorEnum

- All Implemented Interfaces:
    java.io.Serializable, java.lang.Comparable<EvaluationConditionalFormatRule.OperatorEnum>
  Enclosing class:
    EvaluationConditionalFormatRule

      public static enum EvaluationConditionalFormatRule.OperatorEnum
      extends java.lang.Enum<EvaluationConditionalFormatRule.OperatorEnum>

  Not calling it OperatorType to avoid confusion for now with other classes. Definition order matches OOXML type ID indexes. Note that this has NO_COMPARISON as the first item, unlike the similar DataValidation operator enum. Thanks, Microsoft.

- - ### Enum Constant Summary

    Enum Constants
    Enum Constant and Description
    `BETWEEN`
    `EQUAL`
    `GREATER_OR_EQUAL`
    `GREATER_THAN`
    `LESS_OR_EQUAL`
    `LESS_THAN`
    `NO_COMPARISON`
    `NOT_BETWEEN`
    `NOT_EQUAL`

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract <C extends java.lang.Comparable<C>> boolean` | `isValid(C cellValue, C v1, C v2)` Evaluates comparison using operator instance rules
    `boolean` | `isValidForIncompatibleTypes()` Called when the cell and comparison values are of different data types Needed for negation operators, which should return true.
    `static EvaluationConditionalFormatRule.OperatorEnum` | `valueOf(java.lang.String name)` Returns the enum constant of this type with the specified name.
    `static EvaluationConditionalFormatRule.OperatorEnum[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

    - ### Methods inherited from class java.lang.Enum

      `clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

    - ### Methods inherited from class java.lang.Object

      `getClass, notify, notifyAll, wait, wait, wait`

- - ### Enum Constant Detail

    - #### NO_COMPARISON

          public static final EvaluationConditionalFormatRule.OperatorEnum NO_COMPARISON

    - #### BETWEEN

          public static final EvaluationConditionalFormatRule.OperatorEnum BETWEEN

    - #### NOT_BETWEEN

          public static final EvaluationConditionalFormatRule.OperatorEnum NOT_BETWEEN

    - #### EQUAL

          public static final EvaluationConditionalFormatRule.OperatorEnum EQUAL

    - #### NOT_EQUAL

          public static final EvaluationConditionalFormatRule.OperatorEnum NOT_EQUAL

    - #### GREATER_THAN

          public static final EvaluationConditionalFormatRule.OperatorEnum GREATER_THAN

    - #### LESS_THAN

          public static final EvaluationConditionalFormatRule.OperatorEnum LESS_THAN

    - #### GREATER_OR_EQUAL

          public static final EvaluationConditionalFormatRule.OperatorEnum GREATER_OR_EQUAL

    - #### LESS_OR_EQUAL

          public static final EvaluationConditionalFormatRule.OperatorEnum LESS_OR_EQUAL

  - ### Method Detail

    - #### values

          public static EvaluationConditionalFormatRule.OperatorEnum[] values()

      Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

          for (EvaluationConditionalFormatRule.OperatorEnum c : EvaluationConditionalFormatRule.OperatorEnum.values())
              System.out.println(c);

      Returns:
        an array containing the constants of this enum type, in the order they are declared

    - #### valueOf

          public static EvaluationConditionalFormatRule.OperatorEnum valueOf(java.lang.String name)

      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
        `name` - the name of the enum constant to be returned.
      Returns:
        the enum constant with the specified name
      Throws:
        `java.lang.IllegalArgumentException` - if this enum type has no constant with the specified name
        `java.lang.NullPointerException` - if the argument is null

    - #### isValid

          public abstract <C extends java.lang.Comparable<C>> boolean isValid(C cellValue,
                                                                              C v1,
                                                                              C v2)

      Evaluates comparison using operator instance rules
      Parameters:
        `cellValue` - won't be null, assumption is previous checks handled that
        `v1` - if null, per Excel behavior various results depending on the type of cellValue and the specific enum instance
        `v2` - null if not needed. If null when needed, various results, per Excel behavior
      Returns:
        true if the comparison is valid

    - #### isValidForIncompatibleTypes

          public boolean isValidForIncompatibleTypes()

      Called when the cell and comparison values are of different data types Needed for negation operators, which should return true.
      Returns:
        true if this comparison is true when the types to compare are different

Copyright 2020 The Apache Software Foundation or its licensors, as applicable.