# EspressoOptional

Summary:[Methods](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#pubmethods)\|[Inherited Methods](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#inhmethods)\|[\[Expand All\]](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#)  

# EspressoOptional

| This package is part of the Android[support library](https://developer.android.com/topic/libraries/support-library)which is no longer maintained. The support library has been superseded by[AndroidX](https://developer.android.com/jetpack/androidx)which is part of[Jetpack](https://developer.android.com/jetpack). We recommend using the AndroidX libraries in all new projects. You should also consider[migrating](https://developer.android.com/jetpack/androidx/migrate)existing projects to AndroidX. To find the AndroidX class that maps to this deprecated class, see the AndroidX support library[class mappings](https://developer.android.com/jetpack/androidx/migrate/class-mappings).

`
public

final

class
EspressoOptional
`  
`

extends `[Object](https://developer.android.com/reference/java/lang/Object.html)`


``


`

|---|----------------------------------------------------------|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object.html) ||
| ↳ | android.support.test.espresso.util.EspressoOptional\<T\> |

<br />

*** ** * ** ***

This class is a wrapper around[Optional](https://developer.android.com/reference/com/google/common/base/Optional)in order to avoid having public references to Guava API.  
**See also:**

- [Optional](https://developer.android.com/reference/com/google/common/base/Optional)

## Summary

|                                                                                                                                                                                                                                ### Public methods                                                                                                                                                                                                                                ||
|------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` static <T> `[EspressoOptional](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional)`<T>` | ` `[absent](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#absent())`() `                                                                                                                                                                                                                       |
| ` `[Set](https://developer.android.com/reference/java/util/Set.html)`<T>`                                                          | ` `[asSet](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#asSet())`() `                                                                                                                                                                                                                         |
| ` boolean`                                                                                                                         | ` `[equals](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#equals(java.lang.Object))`(`[Object](https://developer.android.com/reference/java/lang/Object.html)` object) `                                                                                                                       |
| ` static <T> `[EspressoOptional](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional)`<T>` | ` `[fromNullable](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#fromNullable(T))`(T nullableReference) `                                                                                                                                                                                       |
| ` T`                                                                                                                               | ` `[get](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#get())`() `                                                                                                                                                                                                                             |
| ` int`                                                                                                                             | ` `[hashCode](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#hashCode())`() `                                                                                                                                                                                                                   |
| ` boolean`                                                                                                                         | ` `[isPresent](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#isPresent())`() `                                                                                                                                                                                                                 |
| ` static <T> `[EspressoOptional](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional)`<T>` | ` `[of](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#of(T))`(T reference) `                                                                                                                                                                                                                   |
| ` T`                                                                                                                               | ` `[or](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#or(com.google.common.base.Supplier<? extends T>))`(Supplier<? extends T> supplier) `                                                                                                                                                     |
| ` T`                                                                                                                               | ` `[or](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#or(T))`(T defaultValue) `                                                                                                                                                                                                                |
| ` Optional<T>`                                                                                                                     | ` `[or](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#or(com.google.common.base.Optional<? extends T>))`(Optional<? extends T> secondChoice) `                                                                                                                                                 |
| ` T`                                                                                                                               | ` `[orNull](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#orNull())`() `                                                                                                                                                                                                                       |
| ` static <T> `[Iterable](https://developer.android.com/reference/java/lang/Iterable.html)`<T>`                                     | ` `[presentInstances](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#presentInstances(java.lang.Iterable<? extends com.google.common.base.Optional<? extends T>>))`(`[Iterable](https://developer.android.com/reference/java/lang/Iterable.html)`<? extends Optional<? extends T>> optionals) ` |
| ` `[String](https://developer.android.com/reference/java/lang/String.html)                                                         | ` `[toString](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#toString())`() `                                                                                                                                                                                                                   |
| ` <V> Optional<V>`                                                                                                                 | ` `[transform](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#transform(com.google.common.base.Function<? super T, V>))`(Function<? super T, V> function) `                                                                                                                                     |

| ### Inherited methods |
|-----------------------|---|
| [![](https://developer.android.com/static/assets/images/styles/disclosure_down.png)](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional#)From class` `[java.lang.Object](https://developer.android.com/reference/java/lang/Object.html)` ` |-------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------| | ` `[Object](https://developer.android.com/reference/java/lang/Object.html)          | ` clone() `                                                                                | | ` boolean`                                                                          | ` equals(`[Object](https://developer.android.com/reference/java/lang/Object.html)` arg0) ` | | ` void`                                                                             | ` finalize() `                                                                             | | ` final `[Class](https://developer.android.com/reference/java/lang/Class.html)`<?>` | ` getClass() `                                                                             | | ` int`                                                                              | ` hashCode() `                                                                             | | ` final void`                                                                       | ` notify() `                                                                               | | ` final void`                                                                       | ` notifyAll() `                                                                            | | ` `[String](https://developer.android.com/reference/java/lang/String.html)          | ` toString() `                                                                             | | ` final void`                                                                       | ` wait(long arg0, int arg1) `                                                              | | ` final void`                                                                       | ` wait(long arg0) `                                                                        | | ` final void`                                                                       | ` wait() `                                                                                 | ||

## Public methods

### absent

```
EspressoOptional<T> absent ()
```

<br />

<br />

|                                                           Returns                                                            ||
|----------------------------------------------------------------------------------------------------------------------|--------|
| [EspressoOptional](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional)`<T>` | <br /> |

### asSet

```
Set<T> asSet ()
```

<br />

<br />

|                                    Returns                                     ||
|------------------------------------------------------------------------|--------|
| [Set](https://developer.android.com/reference/java/util/Set.html)`<T>` | <br /> |

### equals

```
boolean equals (Object object)
```

<br />

<br />

|        Parameters         ||
|----------|-----------------|
| `object` | `Object` <br /> |

|      Returns      ||
|-----------|--------|
| `boolean` | <br /> |

### fromNullable

```
EspressoOptional<T> fromNullable (T nullableReference)
```

<br />

<br />

|           Parameters            ||
|---------------------|------------|
| `nullableReference` | `T` <br /> |

|                                                           Returns                                                            ||
|----------------------------------------------------------------------------------------------------------------------|--------|
| [EspressoOptional](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional)`<T>` | <br /> |

### get

```
T get ()
```

<br />

<br />

|   Returns   ||
|-----|--------|
| `T` | <br /> |

### hashCode

```
int hashCode ()
```

<br />

<br />

|    Returns    ||
|-------|--------|
| `int` | <br /> |

### isPresent

```
boolean isPresent ()
```

<br />

<br />

|      Returns      ||
|-----------|--------|
| `boolean` | <br /> |

### of

```
EspressoOptional<T> of (T reference)
```

<br />

<br />

|       Parameters        ||
|-------------|------------|
| `reference` | `T` <br /> |

|                                                           Returns                                                            ||
|----------------------------------------------------------------------------------------------------------------------|--------|
| [EspressoOptional](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional)`<T>` | <br /> |

### or

```
T or (Supplier<? extends T> supplier)
```

<br />

<br />

|          Parameters           ||
|------------|-------------------|
| `supplier` | `Supplier` <br /> |

|   Returns   ||
|-----|--------|
| `T` | <br /> |

### or

```
T or (T defaultValue)
```

<br />

<br />

|         Parameters         ||
|----------------|------------|
| `defaultValue` | `T` <br /> |

|   Returns   ||
|-----|--------|
| `T` | <br /> |

### or

```
Optional<T> or (Optional<? extends T> secondChoice)
```

<br />

<br />

|            Parameters             ||
|----------------|-------------------|
| `secondChoice` | `Optional` <br /> |

|        Returns        ||
|---------------|--------|
| `Optional<T>` | <br /> |

### orNull

```
T orNull ()
```

<br />

<br />

|   Returns   ||
|-----|--------|
| `T` | <br /> |

### presentInstances

```
Iterable<T> presentInstances (Iterable<? extends Optional<? extends T>> optionals)
```

<br />

<br />

|           Parameters           ||
|-------------|-------------------|
| `optionals` | `Iterable` <br /> |

|                                         Returns                                          ||
|----------------------------------------------------------------------------------|--------|
| [Iterable](https://developer.android.com/reference/java/lang/Iterable.html)`<T>` | <br /> |

### toString

```
String toString ()
```

<br />

<br />

|                                     Returns                                     ||
|-------------------------------------------------------------------------|--------|
| [String](https://developer.android.com/reference/java/lang/String.html) | <br /> |

### transform

```
Optional<V> transform (Function<? super T, V> function)
```

<br />

<br />

|          Parameters           ||
|------------|-------------------|
| `function` | `Function` <br /> |

|        Returns        ||
|---------------|--------|
| `Optional<V>` | <br /> |

-

  ## Classes

  - [ActivityLifecycles](https://developer.android.com/reference/android/support/test/espresso/util/ActivityLifecycles)
  - [EspressoOptional](https://developer.android.com/reference/android/support/test/espresso/util/EspressoOptional)
  - [HumanReadables](https://developer.android.com/reference/android/support/test/espresso/util/HumanReadables)
  - [TreeIterables](https://developer.android.com/reference/android/support/test/espresso/util/TreeIterables)
  - [TreeIterables.ViewAndDistance](https://developer.android.com/reference/android/support/test/espresso/util/TreeIterables.ViewAndDistance)