44 lines
1.4 KiB
Rust
44 lines
1.4 KiB
Rust
//! Types and traits for working with the Matrix protocol.
|
|
//!
|
|
//! This crate re-exports things from all of the other ruma crates so you don't
|
|
//! have to manually keep all the versions in sync.
|
|
//!
|
|
//! Which crates are re-exported can be configured through cargo features.
|
|
//! Depending on which parts of Matrix are relevant to you, activate the
|
|
//! following features:
|
|
//!
|
|
//! * `client-api` for the client-server API
|
|
//! * `federation-api` for the server-server (federation) API
|
|
//! * `appservice-api` for the application service API
|
|
|
|
#![deny(missing_docs)]
|
|
|
|
pub use ruma_common::*;
|
|
#[doc(inline)]
|
|
pub use ruma_identifiers as identifiers;
|
|
|
|
#[cfg(feature = "ruma-events")]
|
|
#[doc(inline)]
|
|
pub use ruma_events as events;
|
|
#[cfg(feature = "ruma-signatures")]
|
|
#[doc(inline)]
|
|
pub use ruma_signatures as signatures;
|
|
|
|
/// Rust types for various Matrix APIs requests and responses and abstractions for them.
|
|
#[cfg(feature = "ruma-api")]
|
|
#[doc(inline)]
|
|
pub mod api {
|
|
// Everything except the `ruma_api!` macro
|
|
pub use ruma_api::{error, Endpoint, EndpointError, Metadata};
|
|
|
|
#[cfg(feature = "ruma-appservice-api")]
|
|
#[doc(inline)]
|
|
pub use ruma_appservice_api as appservice;
|
|
#[cfg(feature = "ruma-client-api")]
|
|
#[doc(inline)]
|
|
pub use ruma_client_api as client;
|
|
#[cfg(feature = "ruma-federation-api")]
|
|
#[doc(inline)]
|
|
pub use ruma_federation_api as federation;
|
|
}
|