# `Mnemosyne.Errors.Framework.SessionError`
[🔗](https://github.com/edlontech/mnemosyne/blob/main/lib/mnemosyne/errors/session_error.ex#L1)

Raised when a session operation is invalid for the current state.

# `t`

```elixir
@type t() :: %Mnemosyne.Errors.Framework.SessionError{
  __exception__: true,
  bread_crumbs: term(),
  class: term(),
  path: term(),
  reason: term(),
  splode: term(),
  stacktrace: term(),
  state: term(),
  vars: term()
}
```

# `exception`

```elixir
@spec exception(opts :: Keyword.t()) :: %Mnemosyne.Errors.Framework.SessionError{
  __exception__: true,
  bread_crumbs: term(),
  class: term(),
  path: term(),
  reason: term(),
  splode: term(),
  stacktrace: term(),
  state: term(),
  vars: term()
}
```

Create an `Elixir.Mnemosyne.Errors.Framework.SessionError` without raising it.

## Keys

- :reason
- :state

---

*Consult [api-reference.md](api-reference.md) for complete listing*
