macro_rules! bound_state_enum {
    (Server, Handshake, $($id: expr, $name: ident)*) => { ... };
    (Server, Status, $($id: expr, $name: ident)*) => { ... };
    (Server, Login, $($id: expr, $name: ident)*) => { ... };
    (Server, Play, $($id: expr, $name: ident)*) => { ... };
    (Client, Handshake, $($id: expr, $name: ident)*) => { ... };
    (Client, Status, $($id: expr, $name: ident)*) => { ... };
    (Client, Login, $($id: expr, $name: ident)*) => { ... };
    (Client, Play, $($id: expr, $name: ident)*) => { ... };
}