typename basic_otp_mailbox_registry<Alloc, Mutex>::mailbox_ptr
basic_otp_mailbox_registry<Alloc, Mutex>::get(const eterm<Alloc>& a_proc) const
    throw (err_bad_argument, err_no_process)
{
    switch (a_proc.type()) {
        case ATOM:  return get(a_proc.to_atom());
        case PID:   return get(a_proc.to_pid());
        default:    throw err_bad_argument("Unknown process identifier", a_proc);
    }
}