Struct wayland_commons::socket::Socket [−][src]
pub struct Socket { /* fields omitted */ }
A wayland socket
Implementations
impl Socket
[src][−]
pub fn send_msg(&self, bytes: &[u8], fds: &[RawFd]) -> NixResult<()>
[src][−]
Send a single message to the socket
A single socket message can contain several wayland messages
The fds
slice should not be longer than MAX_FDS_OUT
, and the bytes
slice should not be longer than MAX_BYTES_OUT
otherwise the receiving
end may lose some data.
pub fn rcv_msg(
&self,
buffer: &mut [u8],
fds: &mut [RawFd]
) -> NixResult<(usize, usize)>
[src][−]
&self,
buffer: &mut [u8],
fds: &mut [RawFd]
) -> NixResult<(usize, usize)>
Receive a single message from the socket
Return the number of bytes received and the number of Fds received.
Errors with WouldBlock
is no message is available.
A single socket message can contain several wayland messages.
The buffer
slice should be at least MAX_BYTES_OUT
long and the fds
slice MAX_FDS_OUT
long, otherwise some data of the received message may
be lost.
Trait Implementations
impl AsRawFd for Socket
[src][+]
impl Drop for Socket
[src][+]
impl FromRawFd for Socket
[src][+]
impl IntoRawFd for Socket
[src][+]
Auto Trait Implementations
impl RefUnwindSafe for Socket
impl Send for Socket
impl Sync for Socket
impl Unpin for Socket
impl UnwindSafe for Socket
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> From<T> for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,