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
//! The key a call site's markup handler is found by
//! (`plans/04-leptos-integration.md` §2.1).
//!
//! A rich call site carries `(key, handler)` pairs, not names: the macro
//! hashes each markup name at compile time, the renderer hashes the name the
//! catalog gives it ([`crate::view`]'s markup parts) and compares. That is
//! how a markup name stays out of the wasm, exactly as an argument name does
//! (B6). It lives here because both sides — `mf2-macros` and the `mf2`
//! facade — already depend on this crate, and neither depends on the other.
/// FNV-1a 64 over the name's UTF-8 bytes — the manifest hash's function
/// (`plans/02-catalog-format.md` §3), over a single name.
///
/// Names are NFC on both sides: the manifest's are normalized by the build,
/// and a part's name comes from a catalog the same build wrote.