Trait Raw

Source
pub trait Raw<T>: Sized {
    // Required methods
    unsafe fn from_raw(raw: *mut T) -> Self;
    fn as_raw(&self) -> *mut T;

    // Provided method
    fn into_raw(self) -> *mut T { ... }
}
Expand description

Trait for types that own a C allocated pointer and are represented by the data pointed to.

Required Methods§

Source

unsafe fn from_raw(raw: *mut T) -> Self

Build Self from a raw pointer

§Safety

raw must be a valid pointer to the representation of Self, and be allocated with libc::malloc

Source

fn as_raw(&self) -> *mut T

Obtain the raw pointer representation

Provided Methods§

Source

fn into_raw(self) -> *mut T

Convert self into a raw pointer

Returned value should be freed with libc::free or sent back to from_raw to avoid memory leak.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl Raw<xcb_ge_generic_event_t> for CompleteNotifyEvent

Source§

impl Raw<xcb_ge_generic_event_t> for xcb::present::ConfigureNotifyEvent

Source§

impl Raw<xcb_ge_generic_event_t> for IdleNotifyEvent

Source§

impl Raw<xcb_ge_generic_event_t> for RedirectNotifyEvent

Source§

impl Raw<xcb_ge_generic_event_t> for BarrierHitEvent

Source§

impl Raw<xcb_ge_generic_event_t> for xcb::xinput::ButtonPressEvent

Source§

impl Raw<xcb_ge_generic_event_t> for DeviceChangedEvent

Source§

impl Raw<xcb_ge_generic_event_t> for EnterEvent

Source§

impl Raw<xcb_ge_generic_event_t> for HierarchyEvent

Source§

impl Raw<xcb_ge_generic_event_t> for xcb::xinput::KeyPressEvent

Source§

impl Raw<xcb_ge_generic_event_t> for PropertyEvent

Source§

impl Raw<xcb_ge_generic_event_t> for RawButtonPressEvent

Source§

impl Raw<xcb_ge_generic_event_t> for RawKeyPressEvent

Source§

impl Raw<xcb_ge_generic_event_t> for RawTouchBeginEvent

Source§

impl Raw<xcb_ge_generic_event_t> for TouchBeginEvent

Source§

impl Raw<xcb_ge_generic_event_t> for TouchOwnershipEvent

Source§

impl Raw<xcb_generic_error_t> for BadDamageError

Source§

impl Raw<xcb_generic_error_t> for GenericError

Source§

impl Raw<xcb_generic_error_t> for BadCrtcError

Source§

impl Raw<xcb_generic_error_t> for BadModeError

Source§

impl Raw<xcb_generic_error_t> for BadOutputError

Source§

impl Raw<xcb_generic_error_t> for BadProviderError

Source§

impl Raw<xcb_generic_error_t> for xcb::record::BadContextError

Source§

impl Raw<xcb_generic_error_t> for GlyphError

Source§

impl Raw<xcb_generic_error_t> for GlyphSetError

Source§

impl Raw<xcb_generic_error_t> for PictFormatError

Source§

impl Raw<xcb_generic_error_t> for PictOpError

Source§

impl Raw<xcb_generic_error_t> for PictureError

Source§

impl Raw<xcb_generic_error_t> for UnknownError

Source§

impl Raw<xcb_generic_error_t> for AlarmError

Source§

impl Raw<xcb_generic_error_t> for CounterError

Source§

impl Raw<xcb_generic_error_t> for RequestError

Source§

impl Raw<xcb_generic_error_t> for ValueError

Source§

impl Raw<xcb_generic_error_t> for BadClockError

Source§

impl Raw<xcb_generic_error_t> for BadHTimingsError

Source§

impl Raw<xcb_generic_error_t> for BadVTimingsError

Source§

impl Raw<xcb_generic_error_t> for ClientNotLocalError

Source§

impl Raw<xcb_generic_error_t> for ExtensionDisabledError

Source§

impl Raw<xcb_generic_error_t> for ModeUnsuitableError

Source§

impl Raw<xcb_generic_error_t> for ZoomLockedError

Source§

impl Raw<xcb_generic_error_t> for BadRegionError

Source§

impl Raw<xcb_generic_error_t> for ClassError

Source§

impl Raw<xcb_generic_error_t> for DeviceBusyError

Source§

impl Raw<xcb_generic_error_t> for DeviceError

Source§

impl Raw<xcb_generic_error_t> for EventError

Source§

impl Raw<xcb_generic_error_t> for ModeError

Source§

impl Raw<xcb_generic_error_t> for KeyboardError

Source§

impl Raw<xcb_generic_error_t> for xcb::xprint::BadContextError

Source§

impl Raw<xcb_generic_error_t> for BadSequenceError

Source§

impl Raw<xcb_generic_error_t> for BadControlError

Source§

impl Raw<xcb_generic_error_t> for BadEncodingError

Source§

impl Raw<xcb_generic_error_t> for BadPortError

Source§

impl Raw<xcb_generic_event_t> for xcb::damage::NotifyEvent

Source§

impl Raw<xcb_generic_event_t> for xcb::dri2::BufferSwapCompleteEvent

Source§

impl Raw<xcb_generic_event_t> for InvalidateBuffersEvent

Source§

impl Raw<xcb_generic_event_t> for xcb::glx::BufferSwapCompleteEvent

Source§

impl Raw<xcb_generic_event_t> for PbufferClobberEvent

Source§

impl Raw<xcb_generic_event_t> for GenericEvent

Source§

impl Raw<xcb_generic_event_t> for xcb::randr::NotifyEvent

Source§

impl Raw<xcb_generic_event_t> for ScreenChangeNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for xcb::screensaver::NotifyEvent

Source§

impl Raw<xcb_generic_event_t> for xcb::shape::NotifyEvent

Source§

impl Raw<xcb_generic_event_t> for CompletionEvent

Source§

impl Raw<xcb_generic_event_t> for UnknownEvent

Source§

impl Raw<xcb_generic_event_t> for AlarmNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for CounterNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for xcb::x::ButtonPressEvent

Source§

impl Raw<xcb_generic_event_t> for CirculateNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for ClientMessageEvent

Source§

impl Raw<xcb_generic_event_t> for ColormapNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for xcb::x::ConfigureNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for ConfigureRequestEvent

Source§

impl Raw<xcb_generic_event_t> for CreateNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for DestroyNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for EnterNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for ExposeEvent

Source§

impl Raw<xcb_generic_event_t> for FocusInEvent

Source§

impl Raw<xcb_generic_event_t> for GraphicsExposureEvent

Source§

impl Raw<xcb_generic_event_t> for GravityNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for xcb::x::KeyPressEvent

Source§

impl Raw<xcb_generic_event_t> for KeymapNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for xcb::x::MapNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for MapRequestEvent

Source§

impl Raw<xcb_generic_event_t> for MappingNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for MotionNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for NoExposureEvent

Source§

impl Raw<xcb_generic_event_t> for PropertyNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for ReparentNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for ResizeRequestEvent

Source§

impl Raw<xcb_generic_event_t> for SelectionClearEvent

Source§

impl Raw<xcb_generic_event_t> for xcb::x::SelectionNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for SelectionRequestEvent

Source§

impl Raw<xcb_generic_event_t> for UnmapNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for VisibilityNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for CursorNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for xcb::xfixes::SelectionNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for ChangeDeviceNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for DeviceButtonStateNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for DeviceFocusInEvent

Source§

impl Raw<xcb_generic_event_t> for DeviceKeyPressEvent

Source§

impl Raw<xcb_generic_event_t> for DeviceKeyStateNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for DeviceMappingNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for DevicePresenceNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for DevicePropertyNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for DeviceStateNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for DeviceValuatorEvent

Source§

impl Raw<xcb_generic_event_t> for AccessXNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for ActionMessageEvent

Source§

impl Raw<xcb_generic_event_t> for BellNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for CompatMapNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for ControlsNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for ExtensionDeviceNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for IndicatorMapNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for IndicatorStateNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for xcb::xkb::MapNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for NamesNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for NewKeyboardNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for StateNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for AttributNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for xcb::xprint::NotifyEvent

Source§

impl Raw<xcb_generic_event_t> for PortNotifyEvent

Source§

impl Raw<xcb_generic_event_t> for VideoNotifyEvent