monty_backend_spi library

Service Provider Interface for dart_monty platform backends.

This library exports types needed only by backend implementers (dart_monty_ffi, dart_monty_wasm) — not by application code.

Application code should import dart_monty_platform_interface.dart instead, which provides the public API (MontyPlatform, MontyResult, MontyError, etc.) without leaking backend implementation details.

Backend authors: extend BaseMontyPlatform and implement MontyCoreBindings to create a new platform backend.

Classes

BaseMontyPlatform
Abstract base that implements MontyPlatform by delegating to a MontyCoreBindings and translating intermediate results into domain types.
CoreProgressResult
Intermediate result from MontyCoreBindings progress methods.
CoreRunResult
Intermediate result from MontyCoreBindings.run.
MontyCoreBindings
Unified bindings contract for Monty backends.

Mixins

MontyStateMixin
Shared lifecycle state machine for MontyPlatform backends.