gio/auto/
simple_io_stream.rs

1// This file was generated by gir (https://github.com/gtk-rs/gir)
2// from gir-files (https://github.com/gtk-rs/gir-files)
3// DO NOT EDIT
4
5use gio_sys;
6use glib::object::Cast;
7use glib::object::IsA;
8use glib::translate::*;
9use std::fmt;
10use IOStream;
11#[cfg(any(feature = "v2_44", feature = "dox"))]
12use InputStream;
13#[cfg(any(feature = "v2_44", feature = "dox"))]
14use OutputStream;
15
16glib_wrapper! {
17    pub struct SimpleIOStream(Object<gio_sys::GSimpleIOStream, SimpleIOStreamClass>) @extends IOStream;
18
19    match fn {
20        get_type => || gio_sys::g_simple_io_stream_get_type(),
21    }
22}
23
24impl SimpleIOStream {
25    #[cfg(any(feature = "v2_44", feature = "dox"))]
26    pub fn new<P: IsA<InputStream>, Q: IsA<OutputStream>>(
27        input_stream: &P,
28        output_stream: &Q,
29    ) -> SimpleIOStream {
30        unsafe {
31            IOStream::from_glib_full(gio_sys::g_simple_io_stream_new(
32                input_stream.as_ref().to_glib_none().0,
33                output_stream.as_ref().to_glib_none().0,
34            ))
35            .unsafe_cast()
36        }
37    }
38}
39
40impl fmt::Display for SimpleIOStream {
41    fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
42        write!(f, "SimpleIOStream")
43    }
44}