← Navigation and routes

Navigation.RestoreError

luastra/navigation

Navigation.RestoreError represents the unsuccessful branch of a bounded operation. Its stable code and structured context support control flow and safe diagnostics without parsing an exception message.

Before you use it

Add luastra/navigation to this module's dependencies in luastra.json, then import it with require("luastra/navigation"). No host capability is required for in-memory navigation. Browser URL/history synchronization additionally needs luastra/host and navigation.history.

How it fits

The type describes a route, stack, compiler, or checked result used by navigation operations.

When to use it

Use Navigation.RestoreError on the unsuccessful branch of the related result. Read its stable fields for control flow or diagnostics; do not parse human-readable assertion or error text.

Fields or definition

ParameterType / valuesDescription
codestringStable machine-readable failure code suitable for branching and diagnostics.

Error codes

This is the complete closed vocabulary emitted by the named operation in this Source SDK contract.

CodeWhen it occurs
invalid_snapshotThe snapshot shape, version, or encoded form is invalid.
invalid_stackThe restored stack is empty, too deep, sparse, or inconsistent.
unknown_routeA restored route is not admitted by the string stack.
invalid_entryA restored typed entry cannot be matched or generated.

SDK type flow

Produced by

Navigation.createNavigation.createRouter

What happens next

A checked route/navigation annotation.

Failures and fixes

Invalid definitions, unknown routes, malformed parameters, excessive history depth, or incompatible snapshots return bounded errors or fail construction. Navigation result records use success:boolean with optional fields, so verify the field you need after checking success.

Availability

Public-source alpha API in 0.5.0-alpha; URL integration is a separate host capability.

Exact declaration

export type RestoreError = { code: string }

Continue learning

Companions

Navigation.MutationResultNavigation.decideBack

Complete inventory

View all pages in Navigation and routes
← Previous: Navigation.SnapshotNext: Navigation.RestoreResult →