# Used for the poll function of a socket, mix several Poll values to check for events on more than one type of event
extern class NativeSocketPollValues `{ int `}
# Data other than high-priority data may be read without blocking.
new pollin `{ return POLLIN; `}
# Normal data may be read without blocking.
new pollrdnorm `{ return POLLRDNORM; `}
# Priority data may be read without blocking.
new pollrdband `{ return POLLRDBAND; `}
# High-priority data may be read without blocking.
new pollpri `{ return POLLPRI; `}
# Normal data may be written without blocking.
new pollout `{ return POLLOUT; `}
# Equivalent to POLLOUT
new pollwrnorm `{ return POLLWRNORM; `}
# Priority data may be written.
new pollwrband `{ return POLLWRBAND; `}
# An error has occurred on the device or stream.
#
# This flag is only valid in the revents bitmask; it shall be ignored in the events member.
new pollerr `{ return POLLERR; `}
# The device has been disconnected.
#
# This event and POLLOUT are mutually-exclusive; a stream can never be
# writable if a hangup has occurred. However, this event and POLLIN,
# POLLRDNORM, POLLRDBAND, or POLLPRI are not mutually-exclusive.
#
# This flag is only valid in the revents bitmask; it shall be ignored in the events member.
new pollhup `{ return POLLHUP; `}
# The specified fd value is invalid.
#
# This flag is only valid in the revents member; it shall ignored in the events member.
new pollnval `{ return POLLNVAL; `}
# Combines two NativeSocketPollValues
private fun +(other: NativeSocketPollValues): NativeSocketPollValues `{
return self | other;
`}
end
lib/socket/socket_c.nit:530,1--577,3