[][src]Trait glib::translate::ToGlibPtr

pub trait ToGlibPtr<'a, P: Copy> {
    type Storage;
    fn to_glib_none(&'a self) -> Stash<'a, P, Self>;

    fn to_glib_container(&'a self) -> Stash<'a, P, Self> { ... }
fn to_glib_full(&self) -> P { ... } }
[]

Translate to a pointer.

Associated Types

type Storage

Required methods

fn to_glib_none(&'a self) -> Stash<'a, P, Self>[]

Transfer: none.

The pointer in the Stash is only valid for the lifetime of the Stash.

Provided methods

fn to_glib_container(&'a self) -> Stash<'a, P, Self>[]

Transfer: container.

We transfer the container ownership to the foreign library retaining the elements ownership.

fn to_glib_full(&self) -> P[]

Transfer: full.

We transfer the ownership to the foreign library.

Implementations on Foreign Types

impl<'a, P: Ptr, T: ToGlibPtr<'a, P>> ToGlibPtr<'a, P> for Option<T>[src][]

type Storage = Option<<T as ToGlibPtr<'a, P>>::Storage>

impl<'a, P: Ptr, T: ?Sized + ToGlibPtr<'a, P>> ToGlibPtr<'a, P> for &'a T[src][]

type Storage = <T as ToGlibPtr<'a, P>>::Storage

impl<'a> ToGlibPtr<'a, *const i8> for str[src][]

type Storage = CString

impl<'a> ToGlibPtr<'a, *mut i8> for str[src][]

type Storage = CString

impl<'a> ToGlibPtr<'a, *const i8> for String[src][]

type Storage = CString

impl<'a> ToGlibPtr<'a, *mut i8> for String[src][]

type Storage = CString

impl<'a> ToGlibPtr<'a, *const i8> for Path[src][]

type Storage = CString

impl<'a> ToGlibPtr<'a, *mut i8> for Path[src][]

type Storage = CString

impl<'a> ToGlibPtr<'a, *const i8> for PathBuf[src][]

type Storage = CString

impl<'a> ToGlibPtr<'a, *mut i8> for PathBuf[src][]

type Storage = CString

impl<'a> ToGlibPtr<'a, *const i8> for OsStr[src][]

type Storage = CString

impl<'a> ToGlibPtr<'a, *mut i8> for OsStr[src][]

type Storage = CString

impl<'a> ToGlibPtr<'a, *const i8> for OsString[src][]

type Storage = CString

impl<'a> ToGlibPtr<'a, *mut i8> for OsString[src][]

type Storage = CString

impl<'a, P: Ptr, T: ToGlibContainerFromSlice<'a, P>> ToGlibPtr<'a, P> for [T][src][]

type Storage = T::Storage

impl<'a> ToGlibPtr<'a, *mut GHashTable> for HashMap<String, String>[src][]

type Storage = HashTable

Implementors

impl<'a, T: 'static, MM> ToGlibPtr<'a, *mut T> for Shared<T, MM> where
    MM: SharedMemoryManager<T> + 'static, 
[src][]

impl<'a, T: 'static, MM: BoxedMemoryManager<T>> ToGlibPtr<'a, *const T> for Boxed<T, MM>[src][]

impl<'a, T: MiniObject + 'static> ToGlibPtr<'a, *const <T as MiniObject>::GstType> for GstRc<T>

impl<'a, T: MiniObject + 'static> ToGlibPtr<'a, *mut <T as MiniObject>::GstType> for GstRc<T>

impl<'a> ToGlibPtr<'a, *const GstMessage> for Message

impl<'a> ToGlibPtr<'a, *mut GstMessage> for Message

impl<'a> ToGlibPtr<'a, *const GstStructure> for Structure

impl<'a> ToGlibPtr<'a, *mut GstStructure> for Structure

impl<'a> ToGlibPtr<'a, *const GstCaps> for Caps

impl<'a> ToGlibPtr<'a, *mut GstCaps> for Caps

impl<'a> ToGlibPtr<'a, *const GstCapsFeatures> for CapsFeatures

impl<'a> ToGlibPtr<'a, *mut GstCapsFeatures> for CapsFeatures

impl<'a> ToGlibPtr<'a, *const GstTagList> for TagList

impl<'a> ToGlibPtr<'a, *mut GstTagList> for TagList

impl<'a> ToGlibPtr<'a, *const GstBuffer> for Buffer

impl<'a> ToGlibPtr<'a, *mut GstBuffer> for Buffer

impl<'a> ToGlibPtr<'a, *const GstMemory> for Memory

impl<'a> ToGlibPtr<'a, *mut GstMemory> for Memory

impl<'a> ToGlibPtr<'a, *const GstSample> for Sample

impl<'a> ToGlibPtr<'a, *mut GstSample> for Sample

impl<'a> ToGlibPtr<'a, *const GstBufferList> for BufferList

impl<'a> ToGlibPtr<'a, *mut GstBufferList> for BufferList

impl<'a> ToGlibPtr<'a, *const GstQuery> for Query

impl<'a> ToGlibPtr<'a, *mut GstQuery> for Query

impl<'a> ToGlibPtr<'a, *const GstEvent> for Event

impl<'a> ToGlibPtr<'a, *mut GstEvent> for Event

impl<'a> ToGlibPtr<'a, *const GstContext> for Context

impl<'a> ToGlibPtr<'a, *mut GstContext> for Context

impl<'a> ToGlibPtr<'a, *const GstToc> for Toc

impl<'a> ToGlibPtr<'a, *mut GstToc> for Toc

impl<'a> ToGlibPtr<'a, *const GstTocEntry> for TocEntry

impl<'a> ToGlibPtr<'a, *mut GstTocEntry> for TocEntry

impl<'a> ToGlibPtr<'a, *const GstRTSPThread> for RTSPThread

impl<'a> ToGlibPtr<'a, *mut GstRTSPThread> for RTSPThread

impl<'a> ToGlibPtr<'a, *const GstRTSPToken> for RTSPToken

impl<'a> ToGlibPtr<'a, *mut GstRTSPToken> for RTSPToken

impl<'a> ToGlibPtr<'a, *const GstVideoOverlayRectangle> for VideoOverlayRectangle

impl<'a> ToGlibPtr<'a, *mut GstVideoOverlayRectangle> for VideoOverlayRectangle

impl<'a> ToGlibPtr<'a, *const GstVideoOverlayComposition> for VideoOverlayComposition

impl<'a> ToGlibPtr<'a, *mut GstVideoOverlayComposition> for VideoOverlayComposition