dbus_server_address_parser/
address.rs1use crate::{Autolaunch, Launchd, NonceTcp, Systemd, Tcp, Unix, Unixexec};
2
3#[derive(Debug, Clone, PartialEq, Eq)]
7pub enum Address {
8 Unix(Unix),
9 Launchd(Launchd),
10 Tcp(Tcp),
11 NonceTcp(NonceTcp),
12 Unixexec(Unixexec),
13 Systemd(Systemd),
14 Autolaunch(Autolaunch),
15}
16
17impl Address {
18 pub fn is_connectable(&self) -> bool {
19 match self {
20 Address::Unix(unix) => unix.is_connectable(),
21 Address::Launchd(launchd) => launchd.is_connectable(),
22 Address::Tcp(tcp) => tcp.is_connectable(),
23 Address::NonceTcp(nonce_tcp) => nonce_tcp.is_connectable(),
24 Address::Unixexec(unixexec) => unixexec.is_connectable(),
25 Address::Systemd(systemd) => systemd.is_connectable(),
26 Address::Autolaunch(autolaunch) => autolaunch.is_connectable(),
27 }
28 }
29
30 pub fn is_listenable(&self) -> bool {
31 match self {
32 Address::Unix(unix) => unix.is_listenable(),
33 Address::Launchd(launchd) => launchd.is_listenable(),
34 Address::Tcp(tcp) => tcp.is_listenable(),
35 Address::NonceTcp(nonce_tcp) => nonce_tcp.is_listenable(),
36 Address::Unixexec(unixexec) => unixexec.is_listenable(),
37 Address::Systemd(systemd) => systemd.is_listenable(),
38 Address::Autolaunch(autolaunch) => autolaunch.is_listenable(),
39 }
40 }
41}