1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115
// This file was generated by gir (https://github.com/gtk-rs/gir @ fe7a6ff+) // from gir-files (https://github.com/gtk-rs/gir-files @ b215ee8) // DO NOT EDIT use Stream; use ffi; use glib::object::Downcast; use glib::object::IsA; use glib::translate::*; use glib_ffi; use gobject_ffi; use std::mem; use std::ptr; glib_wrapper! { /// A memory-backed `Stream`. /// /// # Implements /// /// [`StreamMemExt`](trait.StreamMemExt.html), [`StreamExt`](trait.StreamExt.html) pub struct StreamMem(Object<ffi::GMimeStreamMem, ffi::GMimeStreamMemClass>): Stream; match fn { get_type => || ffi::g_mime_stream_mem_get_type(), } } impl StreamMem { /// Creates a new `StreamMem` object. /// /// # Returns /// /// a new memory stream. pub fn new() -> StreamMem { unsafe { Stream::from_glib_full(ffi::g_mime_stream_mem_new()).downcast_unchecked() } } /// Creates a new `StreamMem` object and initializes the stream /// contents with the first `len` bytes of `buffer`. /// ## `buffer` /// stream data /// ## `len` /// buffer length /// /// # Returns /// /// a new memory stream initialized with `buffer`. pub fn new_with_buffer(buffer: &[u8]) -> StreamMem { let len = buffer.len() as usize; unsafe { Stream::from_glib_full(ffi::g_mime_stream_mem_new_with_buffer(buffer.to_glib_none().0, len)).downcast_unchecked() } } //pub fn new_with_byte_array(array: /*Ignored*/&glib::ByteArray) -> StreamMem { // unsafe { TODO: call ffi::g_mime_stream_mem_new_with_byte_array() } //} } impl Default for StreamMem { fn default() -> Self { Self::new() } } /// Trait containing all `StreamMem` methods. /// /// # Implementors /// /// [`StreamMem`](struct.StreamMem.html) pub trait StreamMemExt { //fn get_byte_array(&self) -> /*Ignored*/Option<glib::ByteArray>; /// Gets whether or not `self` owns the backend memory buffer. /// /// # Returns /// /// `true` if `self` owns the backend memory buffer or `false` /// otherwise. fn get_owner(&self) -> bool; //fn set_byte_array(&self, array: /*Ignored*/&glib::ByteArray); /// Sets whether or not `self` owns the backend memory buffer. /// /// Note: `owner` should be `true` if the stream should free the backend /// memory buffer when destroyed or `false` otherwise. /// ## `owner` /// `true` if this stream should own the `glib::ByteArray` or `false` otherwise fn set_owner(&self, owner: bool); } impl<O: IsA<StreamMem>> StreamMemExt for O { //fn get_byte_array(&self) -> /*Ignored*/Option<glib::ByteArray> { // unsafe { TODO: call ffi::g_mime_stream_mem_get_byte_array() } //} fn get_owner(&self) -> bool { unsafe { from_glib(ffi::g_mime_stream_mem_get_owner(self.to_glib_none().0)) } } //fn set_byte_array(&self, array: /*Ignored*/&glib::ByteArray) { // unsafe { TODO: call ffi::g_mime_stream_mem_set_byte_array() } //} fn set_owner(&self, owner: bool) { unsafe { ffi::g_mime_stream_mem_set_owner(self.to_glib_none().0, owner.to_glib()); } } }