org.hamcrest.core

## Class IsNot<T>

- java.lang.Object
- - org.hamcrest.BaseMatcher<T>
  - - org.hamcrest.core.IsNot<T>

- All Implemented Interfaces:
    Matcher<T>, SelfDescribing

      public class IsNot<T>
      extends BaseMatcher<T>

  Calculates the logical negation of a matcher.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `IsNot(Matcher<T> matcher)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `describeTo(Description description)` Generates a description of the object.
    `boolean` | `matches(Object arg)` Evaluates the matcher for argument item.
    `static <T> Matcher<T>` | `not(Matcher<T> matcher)` Creates a matcher that wraps an existing matcher, but inverts the logic by which it will match.
    `static <T> Matcher<T>` | `not(T value)` A shortcut to the frequently used `not(equalTo(x))`.

    - ### Methods inherited from class org.hamcrest.BaseMatcher

      `_dont_implement_Matcher___instead_extend_BaseMatcher_, describeMismatch, toString`

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

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### IsNot

          public IsNot(Matcher<T> matcher)

  - ### Method Detail

    - #### matches

          public boolean matches(Object arg)

      Description copied from interface: `Matcher`
      Evaluates the matcher for argument item.

      This method matches against Object, instead of the generic type T. This is because the caller of the Matcher does not know at runtime what the type is (because of type erasure with Java generics). It is down to the implementations to check the correct type.
      Parameters:
        `arg` - the object against which the matcher is evaluated.
      Returns:
        `true` if item matches, otherwise `false`.
      See Also:
        `BaseMatcher`

    - #### describeTo

          public void describeTo(Description description)

      Description copied from interface: `SelfDescribing`
      Generates a description of the object. The description may be part of a a description of a larger object of which this is just a component, so it should be worded appropriately.
      Parameters:
        `description` - The description to be built or appended to.

    - #### not

          public static <T> Matcher<T> not(Matcher<T> matcher)

      Creates a matcher that wraps an existing matcher, but inverts the logic by which it will match.

      For example:

          assertThat(cheese, is(not(equalTo(smelly))))

      Parameters:
        `matcher` - the matcher whose sense should be inverted

    - #### not

          public static <T> Matcher<T> not(T value)

      A shortcut to the frequently used `not(equalTo(x))`.

      For example:

          assertThat(cheese, is(not(smelly)))

      instead of:

          assertThat(cheese, is(not(equalTo(smelly))))

      Parameters:
        `value` - the value that any examined object should not equal