Lua.VM.RuntimeError exception (Lua v1.0.0-rc.2)

View Source

Raised by the Lua error() function.

Carries the original Lua error value, which may be any Lua type (string, number, table reference, etc.).

When raised without explicit :line / :source opts (e.g. from a stdlib bad-argument check), exception/1 populates them from the calling Lua source position via Lua.VM.Executor.current_position/0. That position is stashed in the process dictionary at every native-call boundary, so any raise site reachable from a Lua execution inherits the correct attribution automatically.

Summary

Functions

Returns a wire-safe structured map for this error. See Lua.VM.ErrorFormatter.to_map/3 for the shape.

Types

t()

@type t() :: %Lua.VM.RuntimeError{
  __exception__: true,
  call_stack: term(),
  line: term(),
  lua_value: term(),
  message: term(),
  source: term(),
  state: term(),
  value: term()
}

Functions

to_map(error, opts \\ [])

@spec to_map(
  t(),
  keyword()
) :: map()

Returns a wire-safe structured map for this error. See Lua.VM.ErrorFormatter.to_map/3 for the shape.

Pass :source_code to populate source_context.