aver-rt 0.3.2

Shared Rust runtime pieces for Aver-generated programs
Documentation

aver-rt

aver-rt is the shared Rust runtime for Aver.

It is used by:

  • the Aver interpreter/runtime adapters in this repository
  • Rust projects generated by aver compile -t rust

The crate exists so Aver semantics live in one place instead of being duplicated between the interpreter and generated Rust output.

That shared-runtime role is practical, not just architectural. Improvements to AverList, String.slice, or service helpers here affect both generated Rust programs and the interpreter-facing adapters that rely on the same semantics.

What it contains

  • AverList<T>: persistent list used by Aver list operations, including deep-list paths such as teardown, tail, and list_uncons; append-heavy chains are packed into structural segments so interpreter and generated Rust share the same faster behavior on append + get(i) workloads
  • AverDisplay: Aver-specific display formatting used by Console.print and string interpolation
  • shared runtime helpers for console, time, disk, env, and string operations
  • shared service types:
    • Header
    • HttpResponse
    • HttpRequest
    • TcpConnection
  • shared service runtimes:
    • tcp
    • http (behind the http feature)
    • http_server

Features

  • default: no optional dependencies
  • http: enables the HTTP client runtime via ureq

Stability

This crate is primarily intended to support Aver-generated programs and the Aver interpreter. The public API should be treated as young and evolving.

Repository