gio/
lib.rs

1// Take a look at the license at the top of the repository in the LICENSE file.
2
3#![cfg_attr(docsrs, feature(doc_cfg))]
4#![allow(clippy::type_complexity)]
5#![allow(clippy::too_many_arguments)]
6#![allow(clippy::missing_safety_doc)]
7#![allow(clippy::manual_c_str_literals)]
8#![doc = include_str!("../README.md")]
9
10pub use gio_sys as ffi;
11pub use glib;
12
13mod action_entry;
14mod action_map;
15#[cfg(feature = "v2_60")]
16mod app_info;
17mod application;
18pub use action_entry::{ActionEntry, ActionEntryBuilder};
19pub use application::{ApplicationBusyGuard, ApplicationHoldGuard};
20mod application_command_line;
21mod async_initable;
22mod cancellable;
23pub use cancellable::CancelledHandlerId;
24mod cancellable_future;
25pub use crate::cancellable_future::{CancellableFuture, Cancelled};
26mod content_type;
27mod converter;
28mod credentials;
29mod data_input_stream;
30mod datagram_based;
31mod dbus;
32pub use self::dbus::*;
33mod dbus_connection;
34pub use self::dbus_connection::{
35    ActionGroupExportId, FilterId, MenuModelExportId, RegistrationBuilder, RegistrationId,
36    SignalSubscriptionId, WatcherId,
37};
38mod dbus_message;
39mod dbus_method_invocation;
40mod dbus_node_info;
41#[cfg(feature = "v2_72")]
42#[cfg_attr(docsrs, doc(cfg(feature = "v2_72")))]
43mod debug_controller_dbus;
44#[cfg(all(not(windows), not(target_os = "macos")))]
45mod desktop_app_info;
46mod error;
47mod file;
48mod file_attribute_info;
49pub use crate::file_attribute_info::FileAttributeInfo;
50mod file_attribute_info_list;
51mod file_attribute_matcher;
52pub use crate::file_attribute_matcher::FileAttributematcherIter;
53mod file_attribute_value;
54pub use file_attribute_value::FileAttributeValue;
55#[cfg(unix)]
56mod file_descriptor_based;
57#[cfg(unix)]
58pub use file_descriptor_based::FileDescriptorBased;
59mod file_enumerator;
60pub use crate::file_enumerator::FileEnumeratorStream;
61mod file_info;
62mod flags;
63mod inet_address;
64pub use crate::inet_address::InetAddressBytes;
65mod inet_socket_address;
66mod io_stream;
67pub use crate::io_stream::IOStreamAsyncReadWrite;
68mod initable;
69mod input_stream;
70pub use crate::input_stream::{InputStreamAsyncBufRead, InputStreamRead};
71mod list_model;
72mod list_store;
73#[cfg(test)]
74mod memory_input_stream;
75#[cfg(test)]
76mod memory_output_stream;
77mod output_stream;
78pub use crate::output_stream::OutputStreamWrite;
79mod pollable_input_stream;
80pub use crate::pollable_input_stream::InputStreamAsyncRead;
81mod pollable_output_stream;
82pub use crate::pollable_output_stream::OutputStreamAsyncWrite;
83mod resource;
84pub use crate::resource::resources_register_include_impl;
85mod settings;
86pub use crate::settings::BindingBuilder;
87mod simple_proxy_resolver;
88mod socket;
89pub use socket::{InputMessage, InputVector, OutputMessage, OutputVector, SocketControlMessages};
90mod socket_control_message;
91mod socket_listener;
92mod socket_msg_flags;
93pub use socket_msg_flags::SocketMsgFlags;
94mod subprocess;
95mod subprocess_launcher;
96mod threaded_socket_service;
97#[cfg(unix)]
98mod unix_fd_list;
99#[cfg(unix)]
100mod unix_fd_message;
101#[cfg(unix)]
102mod unix_input_stream;
103#[cfg(unix)]
104mod unix_mount_entry;
105#[cfg(unix)]
106mod unix_mount_point;
107#[cfg(unix)]
108mod unix_output_stream;
109#[cfg(unix)]
110mod unix_socket_address;
111
112#[cfg(test)]
113mod test_util;
114
115pub mod builders {
116    pub use super::async_initable::AsyncInitableBuilder;
117    pub use super::auto::builders::*;
118    pub use super::initable::InitableBuilder;
119}
120
121pub mod functions {
122    pub use super::auto::functions::*;
123    pub use super::content_type::content_type_guess;
124}
125
126pub use crate::auto::*;
127pub use crate::functions::*;
128pub mod prelude;
129
130#[allow(clippy::missing_safety_doc)]
131#[allow(clippy::new_ret_no_self)]
132#[allow(unused_imports)]
133mod auto;
134
135mod gio_future;
136pub use crate::gio_future::*;
137
138mod io_extension;
139pub use crate::io_extension::*;
140
141mod io_extension_point;
142pub use crate::io_extension_point::*;
143
144mod task;
145pub use crate::task::*;
146
147#[macro_use]
148pub mod subclass;
149mod read_input_stream;
150pub use crate::read_input_stream::ReadInputStream;
151mod write_output_stream;
152pub use crate::write_output_stream::WriteOutputStream;
153mod dbus_proxy;
154mod tls_connection;
155
156#[cfg(windows)]
157mod win32_input_stream;
158#[cfg(windows)]
159pub use self::win32_input_stream::Win32InputStream;
160
161#[cfg(windows)]
162mod win32_output_stream;
163#[cfg(windows)]
164pub use self::win32_output_stream::Win32OutputStream;