org.hamcrest.core

## Class IsSame<T>

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

- All Implemented Interfaces:
    Matcher<T>, SelfDescribing

      public class IsSame<T>
      extends BaseMatcher<T>

  Is the value the same object as another value?

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `IsSame(T object)`

  - ### 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>` | `sameInstance(T target)` Creates a matcher that matches only when the examined object is the same instance as the specified target object.
    `static <T> Matcher<T>` | `theInstance(T target)` Creates a matcher that matches only when the examined object is the same instance as the specified target object.

    - ### 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

    - #### IsSame

          public IsSame(T object)

  - ### 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.

    - #### sameInstance

          public static <T> Matcher<T> sameInstance(T target)

      Creates a matcher that matches only when the examined object is the same instance as the specified target object.
      Parameters:
        `target` - the target instance against which others should be assessed

    - #### theInstance

          public static <T> Matcher<T> theInstance(T target)

      Creates a matcher that matches only when the examined object is the same instance as the specified target object.
      Parameters:
        `target` - the target instance against which others should be assessed