# `Cartouche.VM.ExecutionResult`
[🔗](https://github.com/zenhive/cartouche/blob/main/lib/cartouche/vm.ex#L196)

Terminal result of a `Cartouche.VM` run: the final stack, whether the
call reverted, and the return data.

# `t`

```elixir
@type t() :: %Cartouche.VM.ExecutionResult{
  return_data: binary(),
  reverted: boolean(),
  stack: [binary()]
}
```

# `from_context`

```elixir
@spec from_context(Cartouche.VM.Context.t()) :: t()
```

Projects a halted execution `Context` down to the public-facing
`ExecutionResult` — keeping only the final stack, revert flag, and
return data.

---

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