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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
//! Event handler priority ordering.
//!
//! Mirrors Velocity's `PostOrder` concept: handlers with higher priority values
//! execute first. Named constants provide the standard ordering tiers.
/// Priority level for event handlers.
///
/// Higher values execute first. Handlers at the same priority level execute in
/// registration order.
///
/// Standard tiers are provided as associated constants. Custom values can be
/// used for fine-grained ordering between tiers.
///
/// # Execution Order
///
/// ```text
/// FIRST (128) -> EARLY (64) -> NORMAL (0) -> LATE (-64) -> LAST (-128)
/// ```
;
/// Observer phase within the event dispatch pipeline.
///
/// Observers receive a shared (`&E`) reference to the event, meaning they
/// cannot modify it. This makes them suitable for logging, metrics, and
/// other read-only side effects.
///
/// # Dispatch Order
///
/// ```text
/// Pre observers → Handlers (mutable, priority-ordered) → Post observers
/// ```