Skip to main content

gpui_types/
gpui_types.rs

1//! Core API primitive types shared between GPUI and its platform backends.
2//!
3//! This crate sits at the bottom of GPUI's dependency graph. It holds the pure
4//! value types — geometry (`Pixels`, `Point`, `Size`, `Bounds`, …) and colors
5//! (`Rgba`, `Hsla`, `Background`, …) — that both the `gpui` crate and the
6//! platform implementations depend on.
7//!
8//! Keeping these types here means a platform backend can depend on the API
9//! primitives without depending on all of `gpui`. The `gpui` crate re-exports
10//! everything in this crate, so `gpui::Pixels` and `gpui_types::Pixels` name
11//! the same type and consumers do not need to know this crate exists.
12
13#![warn(missing_docs)]
14
15mod color;
16mod geometry;
17mod input;
18mod keyboard;
19mod layout;
20mod math;
21mod scene;
22mod style;
23
24#[cfg(feature = "lyon")]
25mod lyon_bridge;
26
27pub use color::*;
28pub use geometry::*;
29pub use input::*;
30pub use keyboard::*;
31pub use layout::*;
32pub use math::*;
33pub use scene::*;
34pub use style::*;