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

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

Required Methods

Transfer: none.

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

Provided Methods

Transfer: container.

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

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]

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

impl<'a> ToGlibPtr<'a, *mut GValue> for &'a [&'a ToValue]
[src]

Implementors