Package: groovy.inspect

## [Java] Class Inspector.MemberComparator

- groovy.inspect.Inspector.MemberComparator

- All Implemented Interfaces and Traits:
    Comparator, Serializable

      public static class Inspector.MemberComparator
      extends Object
      implements Comparator, Serializable

  Comparator for member information arrays.

- - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `public int` | `compare(Object a, Object b)` Compares its two arguments for order. Returns a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second. The implementor must ensure that signum`(compare(x, y)) == -signum(compare(y, x))` for all `x` and `y`. (This implies that `compare(x, y)` must throw an exception if and only if `compare(y, x)` throws an exception.) The implementor must also ensure that the relation is transitive: `((compare(x, y)>0) && (compare(y, z)>0))` implies `compare(x, z)>0`. Finally, the implementor must ensure that `compare(x, y)==0` implies that `signum(compare(x, z))==signum(compare(y, z))` for all `z`. throws: NullPointerException if an argument is null and this comparator does not permit null arguments throws: ClassCastException if the arguments' types prevent them from being compared by this comparator. API Note: It is generally the case, but not strictly required that `(compare(x, y)==0) == (x.equals(y))`. Generally speaking, any comparator that violates this condition should clearly indicate this fact. The recommended language is "Note: this comparator imposes orderings that are inconsistent with equals." Parameters: `o1` - the first object to be compared. `o2` - the second object to be compared. Returns: a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class Object` | `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### public int compare(Object a, Object b)

      Compares its two arguments for order. Returns a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.

      The implementor must ensure that signum`(compare(x, y)) == -signum(compare(y, x))` for all `x` and `y`. (This implies that `compare(x, y)` must throw an exception if and only if `compare(y, x)` throws an exception.)

      The implementor must also ensure that the relation is transitive: `((compare(x, y)>0) && (compare(y, z)>0))` implies `compare(x, z)>0`.

      Finally, the implementor must ensure that `compare(x, y)==0` implies that `signum(compare(x, z))==signum(compare(y, z))` for all `z`.

      throws:
        NullPointerException if an argument is null and this comparator does not permit null arguments
      throws:
        ClassCastException if the arguments' types prevent them from being compared by this comparator.
      API Note:
        It is generally the case, but not strictly required that `(compare(x, y)==0) == (x.equals(y))`. Generally speaking, any comparator that violates this condition should clearly indicate this fact. The recommended language is "Note: this comparator imposes orderings that are inconsistent with equals."
      Parameters:
        `o1` - the first object to be compared.
        `o2` - the second object to be compared.
      Returns:
        a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second.