# StackWalker.Option

Added in[API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)

# Option

```
class Option
```

|---|---|--------------------------------------------------------------------------------------------------------------|
| [kotlin.Any](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)                                  |||
| ↳ | [kotlin.Enum](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-enum/index.html)\<[java.lang.StackWalker.Option](https://developer.android.com/reference/kotlin/java/lang/StackWalker.Option#)\> ||
|   | ↳ | [java.lang.StackWalker.Option](https://developer.android.com/reference/kotlin/java/lang/StackWalker.Option#) |

|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Known Direct Subclasses [StackWalker.Option.RETAIN_CLASS_REFERENCE](https://developer.android.com/reference/kotlin/java/lang/StackWalker.Option#ENUM_VALUE:RETAIN_CLASS_REFERENCE),[StackWalker.Option.SHOW_HIDDEN_FRAMES](https://developer.android.com/reference/kotlin/java/lang/StackWalker.Option#ENUM_VALUE:SHOW_HIDDEN_FRAMES),[StackWalker.Option.SHOW_REFLECT_FRAMES](https://developer.android.com/reference/kotlin/java/lang/StackWalker.Option#ENUM_VALUE:SHOW_REFLECT_FRAMES) |------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------| | [StackWalker.Option.RETAIN_CLASS_REFERENCE](https://developer.android.com/reference/kotlin/java/lang/StackWalker.Option#ENUM_VALUE:RETAIN_CLASS_REFERENCE) | Retains`Class`object in`StackFrame`s walked by this`StackWalker`. | | [StackWalker.Option.SHOW_HIDDEN_FRAMES](https://developer.android.com/reference/kotlin/java/lang/StackWalker.Option#ENUM_VALUE:SHOW_HIDDEN_FRAMES)         | Shows all hidden frames.                                          | | [StackWalker.Option.SHOW_REFLECT_FRAMES](https://developer.android.com/reference/kotlin/java/lang/StackWalker.Option#ENUM_VALUE:SHOW_REFLECT_FRAMES)       | Shows all reflection frames.                                      | |

Stack walker option to configure the[stack frame](https://developer.android.com/reference/kotlin/java/lang/StackWalker.StackFrame)information obtained by a`StackWalker`.

## Summary

|                                                                                                 Enum values                                                                                                  ||
|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---|
| [RETAIN_CLASS_REFERENCE](https://developer.android.com/reference/kotlin/java/lang/StackWalker.Option#ENUM_VALUE:RETAIN_CLASS_REFERENCE) Retains`Class`object in`StackFrame`s walked by this`StackWalker`. |
| [SHOW_HIDDEN_FRAMES](https://developer.android.com/reference/kotlin/java/lang/StackWalker.Option#ENUM_VALUE:SHOW_HIDDEN_FRAMES) Shows all hidden frames.                                                  |
| [SHOW_REFLECT_FRAMES](https://developer.android.com/reference/kotlin/java/lang/StackWalker.Option#ENUM_VALUE:SHOW_REFLECT_FRAMES) Shows all reflection frames.                                            |

## Enum values

### RETAIN_CLASS_REFERENCE

Added in[API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
enum val RETAIN_CLASS_REFERENCE : StackWalker.Option
```

Retains`Class`object in`StackFrame`s walked by this`StackWalker`.

A`StackWalker`configured with this option will support[StackWalker.getCallerClass()](https://developer.android.com/reference/kotlin/java/lang/StackWalker#getCallerClass())and[StackFrame.getDeclaringClass()](https://developer.android.com/reference/kotlin/java/lang/StackWalker.StackFrame#getDeclaringClass()).  

### SHOW_HIDDEN_FRAMES

Added in[API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
enum val SHOW_HIDDEN_FRAMES : StackWalker.Option
```

Shows all hidden frames.

A Java Virtual Machine implementation may hide implementation specific frames in addition to[reflection frames](https://developer.android.com/reference/kotlin/java/lang/StackWalker.Option#). A`StackWalker`with this`SHOW_HIDDEN_FRAMES`option will show all hidden frames (including reflection frames).  

### SHOW_REFLECT_FRAMES

Added in[API level 34](https://developer.android.com/guide/topics/manifest/uses-sdk-element.html#ApiLevels)  

```
enum val SHOW_REFLECT_FRAMES : StackWalker.Option
```

Shows all reflection frames.

By default, reflection frames are hidden. A`StackWalker`configured with this`SHOW_REFLECT_FRAMES`option will show all reflection frames that include[java.lang.reflect.Method#invoke](https://developer.android.com/reference/kotlin/java/lang/reflect/Method#invoke(kotlin.Any,%20kotlin.Any))and[java.lang.reflect.Constructor#newInstance(Object...)](https://developer.android.com/reference/kotlin/java/lang/reflect/Constructor#newInstance(kotlin.Any))and their reflection implementation classes.

The[SHOW_HIDDEN_FRAMES](https://developer.android.com/reference/kotlin/java/lang/StackWalker.Option#)option can also be used to show all reflection frames and it will also show other hidden frames that are implementation-specific.