1mod impl_fmt;
2
3#[cfg(feature = "serde")]
4mod serde;
5
6#[cfg(test)]
7mod tests;
8
9#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
11pub struct ActorID(Inner);
12
13impl ActorID {
14 pub(crate) fn new(system: usize, actor: usize, seq: usize) -> Self {
16 Self(Inner { system, actor, seq })
17 }
18 pub(crate) fn system(&self) -> usize {
20 self.0.system
21 }
22 pub(crate) fn actor(&self) -> usize {
24 self.0.actor
25 }
26 pub(crate) fn seq(&self) -> usize {
28 self.0.seq
29 }
30}
31
32#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
33struct Inner {
34 system: usize,
35 actor: usize,
36 seq: usize,
37}