blob: e5189f5ebcd2f8af1e1fa8aef23013c2d732ecf3 [file] [log] [blame]
use sys::*;
bitflags! {
/// Signals that can be waited upon.
///
/// See
/// [Objects and signals](https://fuchsia.googlesource.com/zircon/+/master/docs/concepts.md#Objects-and-Signals)
/// in the Zircon kernel documentation. Note: the names of signals are still in flux.
#[repr(C)]
pub struct Signals: zx_signals_t {
const NONE = ZX_SIGNAL_NONE;
const OBJECT_ALL = ZX_OBJECT_SIGNAL_ALL;
const USER_ALL = ZX_USER_SIGNAL_ALL;
const OBJECT_0 = ZX_OBJECT_SIGNAL_0;
const OBJECT_1 = ZX_OBJECT_SIGNAL_1;
const OBJECT_2 = ZX_OBJECT_SIGNAL_2;
const OBJECT_3 = ZX_OBJECT_SIGNAL_3;
const OBJECT_4 = ZX_OBJECT_SIGNAL_4;
const OBJECT_5 = ZX_OBJECT_SIGNAL_5;
const OBJECT_6 = ZX_OBJECT_SIGNAL_6;
const OBJECT_7 = ZX_OBJECT_SIGNAL_7;
const OBJECT_8 = ZX_OBJECT_SIGNAL_8;
const OBJECT_9 = ZX_OBJECT_SIGNAL_9;
const OBJECT_10 = ZX_OBJECT_SIGNAL_10;
const OBJECT_11 = ZX_OBJECT_SIGNAL_11;
const OBJECT_12 = ZX_OBJECT_SIGNAL_12;
const OBJECT_13 = ZX_OBJECT_SIGNAL_13;
const OBJECT_14 = ZX_OBJECT_SIGNAL_14;
const OBJECT_15 = ZX_OBJECT_SIGNAL_15;
const OBJECT_16 = ZX_OBJECT_SIGNAL_16;
const OBJECT_17 = ZX_OBJECT_SIGNAL_17;
const OBJECT_18 = ZX_OBJECT_SIGNAL_18;
const OBJECT_19 = ZX_OBJECT_SIGNAL_19;
const OBJECT_20 = ZX_OBJECT_SIGNAL_20;
const OBJECT_21 = ZX_OBJECT_SIGNAL_21;
const OBJECT_22 = ZX_OBJECT_SIGNAL_22;
const OBJECT_HANDLE_CLOSED = ZX_OBJECT_HANDLE_CLOSED;
const USER_0 = ZX_USER_SIGNAL_0;
const USER_1 = ZX_USER_SIGNAL_1;
const USER_2 = ZX_USER_SIGNAL_2;
const USER_3 = ZX_USER_SIGNAL_3;
const USER_4 = ZX_USER_SIGNAL_4;
const USER_5 = ZX_USER_SIGNAL_5;
const USER_6 = ZX_USER_SIGNAL_6;
const USER_7 = ZX_USER_SIGNAL_7;
const OBJECT_READABLE = ZX_OBJECT_READABLE;
const OBJECT_WRITABLE = ZX_OBJECT_WRITABLE;
const OBJECT_PEER_CLOSED = ZX_OBJECT_PEER_CLOSED;
// Cancelation (handle was closed while waiting with it)
const HANDLE_CLOSED = ZX_SIGNAL_HANDLE_CLOSED;
// Event
const EVENT_SIGNALED = ZX_EVENT_SIGNALED;
// EventPair
const EVENT_PAIR_SIGNALED = ZX_EPAIR_SIGNALED;
const EVENT_PAIR_CLOSED = ZX_EPAIR_CLOSED;
// Task signals (process, thread, job)
const TASK_TERMINATED = ZX_TASK_TERMINATED;
// Channel
const CHANNEL_READABLE = ZX_CHANNEL_READABLE;
const CHANNEL_WRITABLE = ZX_CHANNEL_WRITABLE;
const CHANNEL_PEER_CLOSED = ZX_CHANNEL_PEER_CLOSED;
// Socket
const SOCKET_READABLE = ZX_SOCKET_READABLE;
const SOCKET_WRITABLE = ZX_SOCKET_WRITABLE;
const SOCKET_PEER_CLOSED = ZX_SOCKET_PEER_CLOSED;
// Port
const PORT_READABLE = ZX_PORT_READABLE;
// Resource
const RESOURCE_DESTROYED = ZX_RESOURCE_DESTROYED;
const RESOURCE_READABLE = ZX_RESOURCE_READABLE;
const RESOURCE_WRITABLE = ZX_RESOURCE_WRITABLE;
const RESOURCE_CHILD_ADDED = ZX_RESOURCE_CHILD_ADDED;
// Fifo
const FIFO_READABLE = ZX_FIFO_READABLE;
const FIFO_WRITABLE = ZX_FIFO_WRITABLE;
const FIFO_PEER_CLOSED = ZX_FIFO_PEER_CLOSED;
// Job
const JOB_NO_PROCESSES = ZX_JOB_NO_PROCESSES;
const JOB_NO_JOBS = ZX_JOB_NO_JOBS;
// Process
const PROCESS_TERMINATED = ZX_PROCESS_TERMINATED;
// Thread
const THREAD_TERMINATED = ZX_THREAD_TERMINATED;
// Log
const LOG_READABLE = ZX_LOG_READABLE;
const LOG_WRITABLE = ZX_LOG_WRITABLE;
// Timer
const TIMER_SIGNALED = ZX_TIMER_SIGNALED;
}
}