pub struct NameConnection { /* private fields */ }
Expand description
A connection that can be derived from a parsed display name.
This is the primary Connection
type that is used in breadx
, as it
represents the most common byte streams that are used to connect to the
X11 server on modern OS. The display name, usually stored in the DISPLAY
environment variable, is parsed and the connection is created from the parsed
information.
This is a wrapper around either StdConnection<TcpStream>
or, if on Unix,
SendmsgConnection
.
Implementations§
Source§impl NameConnection
impl NameConnection
Sourcepub fn new(name: Option<&str>) -> Result<Self>
pub fn new(name: Option<&str>) -> Result<Self>
Creates a new connection from a display name.
§Blocking
This function blocks while it tries to connect to the server. Use the
[new_async
] function if you would like a non-blocking variant.
Sourcepub fn from_parsed_display(
parsed_display: &ParsedDisplay,
is_env: bool,
) -> Result<Self>
pub fn from_parsed_display( parsed_display: &ParsedDisplay, is_env: bool, ) -> Result<Self>
Creates a new connection from an already parsed display name.
§Blocking
This function blocks while it tries to connect to the server. Use the
[from_parsed_display_async
] function if you would like a non-blocking variant.
Sourcepub fn get_address(&self) -> Result<(Family, Vec<u8>)>
pub fn get_address(&self) -> Result<(Family, Vec<u8>)>
Get the peer address and family used in this connection.
This is useful, since the xauth
interface requires the family and
address to be known.
Sourcepub fn take_error(&self) -> Option<Error>
pub fn take_error(&self) -> Option<Error>
If there is an error associated with this socket, take it.
Source§impl NameConnection
impl NameConnection
Sourcepub fn from_parsed_display_async<'a, Fut, R: 'a>(
parsed_display: &'a ParsedDisplay,
is_env: bool,
resolv: impl FnMut(NameConnection) -> Fut + 'a,
) -> impl Future<Output = Result<R>> + 'a
pub fn from_parsed_display_async<'a, Fut, R: 'a>( parsed_display: &'a ParsedDisplay, is_env: bool, resolv: impl FnMut(NameConnection) -> Fut + 'a, ) -> impl Future<Output = Result<R>> + 'a
Create a NameConnection
in a non-blocking manner.
This function does not block, and will select the first connection
that is available. The resolv
parameter should poll the connection
until it is writable using the currently availably runtime.