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
//! Extension traits
//!
//! Wildcard imports give you access to all the goodies:
//!
//! ```
//! use wireplumber::prelude::*;
//! use wireplumber::pw::{self, PipewireObject};
//!
//! fn get_id(obj: &PipewireObject) -> u32 {
//!   obj.pw_property(pw::PW_KEY_OBJECT_ID)
//!     .expect("how do you not know who you are")
//! }
//! ```

#[cfg(feature = "glib-signal")]
#[cfg_attr(docsrs, doc(cfg(feature = "glib-signal")))]
#[doc(no_inline)]
pub use glib_signal::ObjectSignalExt as _;
#[doc(no_inline)]
pub use {
	crate::{
		core::Core,
		core::ObjectExt as _,
		plugin::{AsyncPluginExt as _, PluginExt as _},
		pw::{
			EndpointExt as _, GlobalProxyExt as _, MetadataExt as _, PipewireObjectExt as _, PipewireObjectExt2 as _,
			PipewirePropertyStringIterExt as _, ProxyExt as _, ProxyExt2 as _,
		},
		session::{
			SessionItemExt as _, SiAcquisitionExt as _, SiAcquisitionExt2 as _, SiAdapterExt as _, SiAdapterExt2 as _,
			SiEndpointExt as _, SiFactoryExt as _, SiLinkExt as _, SiLinkableExt as _,
		},
		util::{TransitionExt as _, TransitionExt2 as _},
	},
	glib::{
		object::{Cast as _, IsA as _},
		types::StaticType as _,
	},
};
/// this crate uses the prelude too!
#[allow(unused_imports)]
pub(crate) use {
	crate::{
		error::{Error, LibraryErrorEnum},
		log::{wp_critical, wp_debug, wp_info, wp_message, wp_trace, wp_warning},
		util::{IntoValueIterator, ValueIterator, WpIterator},
	},
	glib::{
		error::ErrorDomain,
		ffi::{gconstpointer, gpointer},
		gstr,
		object::{Cast, IsA, Object as GObject, ObjectExt as GObjectExt, ObjectType},
		translate::*,
		types::{Pointee, Pointer, StaticType},
		value::{FromValue, ToValue},
		variant::{FromVariant, StaticVariantType, ToVariant},
		GStr, GString, Type, Value, Variant, VariantClass, VariantTy,
	},
	std::{
		borrow::{Borrow, Cow},
		convert::{Infallible, TryFrom, TryInto},
		ffi::{CStr, CString},
		fmt::{self, Debug, Display, Write as _},
		future::Future,
		iter::{self, FromIterator},
		marker::PhantomData,
		mem,
		ops::{Deref, DerefMut},
		pin::Pin,
		ptr::{self, NonNull},
		slice,
		str::{self, FromStr},
	},
};