Skip to main content

Module prelude

Module prelude 

Source
Expand description

The names a program cannot avoid, glob-importable in one line. The names a retroglyph program cannot avoid, glob-importable in one line (use retroglyph::prelude::*;): the App contract, the trait a backend’s own builder implements to be launched, the two style primitives, the input event/key types, and the geometry aliases every Surface/Backend call takes or returns, plus HasSize so .width()/.height() resolve on Size without a separate ixy import.

Everything here also lives at its own module path (retroglyph::app::App, retroglyph::color::Style, …); the prelude is purely a convenience re-export, not a separate surface.

Structs§

Frame
Per-frame context handed to App::update.
Style
A style consisting of foreground and background color.
Terminal
A double-buffered terminal generic over a Backend.

Enums§

Color
Represents a color in the terminal grid.
Event
Terminal input event.
Flow
Whether the game loop should continue or stop after a frame, and whether that frame renders.
KeyCode
Keyboard key codes.

Traits§

App
The per-frame update contract for a game.
HasSize
A type that has a [Size<T>].
Launch
A backend’s own entry point for driving an App, named at the call site rather than selected by which Cargo features happen to be enabled.

Type Aliases§

Pos
Pos in the grid, in (x = column, y = row) order.
Rect
Rectangle in the grid.
Size
Size of the grid.