Skip to main content

Module stmt

Module stmt 

Source
Expand description

Imperative statement AST types for the LOGOS language.

This module defines statement types for the imperative fragment including:

  • Stmt: Statement variants (let, if, match, while, for, function defs)
  • Expr: Imperative expressions (field access, method calls, literals)
  • TypeExpr: Type annotations with refinements and generics
  • Literal: Literal values (numbers, strings, booleans)
  • Block: Statement blocks with optional return expressions

The imperative AST is used in LOGOS mode for generating executable Rust code.

Structs§

MatchArm
Match arm for pattern matching in Inspect statements.
SecurePad
The with pad "<path>" as <role> binding on a Connect/Listen — activate the PNP one-time-pad session over the pad file at pad, with this peer taking role.

Enums§

BinaryOpKind
Binary operation kinds for imperative expressions.
ClosureBody
Body of a closure expression.
CompressionCodec
The wire compression codec a Send compressed [with <codec>] selects. The transpiler maps this to the runtime’s wire codec; bare compressed = Deflate.
Expr
Shared expression type for pure computations (LOGOS §15.0.0).
Literal
Literal values in LOGOS.
Pattern
Pattern for loop variable binding. Supports single identifiers and tuple destructuring for Map iteration.
ReadSource
Source for Read statements.
SecureRole
Imperative statement AST (LOGOS §15.0.0).
SelectBranch
A branch in a Select statement.
SendLayout
The wire LAYOUT a Send modifier picks — the size↔speed dial the sender chooses for their link. The transpiler maps this to the runtime’s numeric codec. The sender knows their use case; this lets them express it in one word.
Stmt
StringPart
A segment of an interpolated string.
TypeExpr
Type expression for explicit type annotations.
ZoneSource
Backing-file source for a memory-mapped zone (… mapped from <here>). Inside a zone called "D" mapped from "f.bin" is ZoneSource::Literal; … mapped from path (a runtime Text variable) is ZoneSource::Variable.

Type Aliases§

Block
Block is a sequence of statements.