lmjtfy.git / packages / archive / src / README.md
1# Chapter 9½: inside archive/src
2
3`lib.rs`, in order: `Ask`, the messages in; `Record`, `Pot` and `Called`,
4the reply to a call; `Answer` and `Detail`, what is kept of Jev's answer,
5with `note`, `spread` and `line` to print it; `stored`, which reads old
6answers too; `Entry`, `Stats`, `Home`, `FEED` and `MOST`, the feed;
7`Fetch` and `Live`; `Told`, the messages out; `Admin`, `Answered` and
8`reads_only`, the admin door; and `when`.
9
10`event.rs` is an `Event`: everything a request says about itself, what
11kind of client sent it, and whether it is a visit. `COLUMNS` and `values`
12are the shape of the archive's `events` table.
13
14`tests.rs` sends every message through JSON and back (they cross between a
15Worker and an object that may be on different code for a few seconds after
16a deploy) and checks the printed lines.
17
18> **Try it.** `cargo test -p archive`.
19
20| File | What |
21| --- | --- |
22| [lib.rs](lib.rs) | The messages to and from the archive object, and what is kept of an answer. |
23| [event.rs](event.rs) | `Event` and `Origin`: a request kept whole, and its columns. |
24| [tests.rs](tests.rs) | Round trips, printed lines, and old answers still read. |
25
26← Previous: [Chapter 9, archive/](../) · Up: [archive](../) · Next: [Chapter 10, budget/](../../budget/) →