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
svgbobdoc::transform! {
/// ```svgbob,[traits]
/// "r3_kernel" ╵ "your_app"
/// ╵
/// ╵ build! ╵ use_port!
/// ╵ ╵
/// .------------------. ╵ .-----------------. ╵
/// | trait KernelCfg1 | ╵ | impl KernelCfg1 | ╵
/// '------------------' ╵ '-----------------' ╵
/// ^ ╵ ^ | ╵
/// | ╵ | v ╵
/// | ╵ .------' Config data ------------.
/// | ╵ | ^ ╵ |
/// | ╵ | | ╵ v
/// .------------. ╵ | | ╵ .-----------.
/// | trait Port | ╵ +--------------)----------> | impl Port |
/// '------------' ╵ | | ╵ '-----------'
/// ^ ╵ | | ╵ |
/// | ╵ | | ╵ |
/// | ╵ | | ╵ |
/// | ╵ | | ╵ |
/// .------------------. ╵ | .-----------------. ╵ |
/// | trait KernelCfg2 | ╵ | | impl KernelCfg2 | ╵ |
/// '------------------' ╵ | '-----------------' ╵ |
/// ^ ╵ | ^ ^ ╵ |
/// | ╵─ ┼ ─ ─ ─ ─ ┼ ─ ─ ─ ─ ┼ ─ ─╵ |
/// | | .------' | ╵ |
/// | | | | ╵ |
/// .--------------------. .-------------------. | ╵ |
/// | trait KernelTraits | | impl KernelTraits |<--+--)-------------'
/// '--------------------' '-------------------' | | ╵
/// ^ ^ | '----------.
/// | | .-----' ╵ |
/// | | | ╵ |
/// | | v ╵ .-------------.
/// .--------------------. .-------------------. .---|Entry points |
/// | trait PortToKernel | | impl PortToKernel | <---' ╵ '-------------'
/// '--------------------' '-------------------' ╵
/// ```
}