1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
//! The projections seam: a window onto the grid, and a projection as a pure
//! function from the model and a window to lines (`KERNEL.1`, the seam as
//! data; `KERNEL.4`, the first implementation, [`crate::view::Grid`]). Cut
//! out of `frazaro-core`'s `kernel.rs` with the language (`PORT.12`), since
//! an engine's screen is a projection of the grid and must not depend on
//! the bridges; the seams' registry, the engines trait and the host
//! profiles stay in the core.
use crate;
/// A window onto the model: one sheet by name, one rectangle of it.
/// A projection: a pure function from the model and a window to lines, the
/// shape every door prints (`SD-23`). The grid is the first
/// (`crate::view::Grid`, `KERNEL.4`), the sentence pane and the dependency
/// cone drawn as a diagram the core's (`KERNEL.12`). An engine's plane, a
/// byte a cell, is a projection by name beside this trait
/// (`crate::machine::plane`, `KERNEL.22`), since its output is a raster
/// and not lines; whether rasters get a trait of their own waits for a
/// second one. A projection never edits the model.