gio_unix/auto/file_descriptor_based.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 crate::ffi;
6use glib::prelude::*;
7
8glib::wrapper! {
9 /// `GFileDescriptorBased` is an interface for file descriptor based IO.
10 ///
11 /// It is implemented by streams (implementations of [`gio::InputStream`][crate::gio::InputStream] or
12 /// [`gio::OutputStream`][crate::gio::OutputStream]) that are based on file descriptors.
13 ///
14 /// Note that `<gio/gfiledescriptorbased.h>` belongs to the UNIX-specific
15 /// GIO interfaces, thus you have to use the `gio-unix-2.0.pc` pkg-config
16 /// file or the `GioUnix-2.0` GIR namespace when using it.
17 ///
18 /// # Implements
19 ///
20 /// [`FileDescriptorBasedExt`][trait@crate::prelude::FileDescriptorBasedExt], [`FileDescriptorBasedExtManual`][trait@crate::prelude::FileDescriptorBasedExtManual]
21 #[doc(alias = "GFileDescriptorBased")]
22 pub struct FileDescriptorBased(Interface<ffi::GFileDescriptorBased, ffi::GFileDescriptorBasedIface>);
23
24 match fn {
25 type_ => || ffi::g_file_descriptor_based_get_type(),
26 }
27}
28
29impl FileDescriptorBased {
30 pub const NONE: Option<&'static FileDescriptorBased> = None;
31}
32
33/// Trait containing all [`struct@FileDescriptorBased`] methods.
34///
35/// # Implementors
36///
37/// [`FileDescriptorBased`][struct@crate::FileDescriptorBased], [`InputStream`][struct@crate::InputStream], [`OutputStream`][struct@crate::OutputStream]
38pub trait FileDescriptorBasedExt: IsA<FileDescriptorBased> + 'static {}
39
40impl<O: IsA<FileDescriptorBased>> FileDescriptorBasedExt for O {}