lgui-core 0.2.0

Platform-neutral runtime and UI primitives for LGUI
Documentation
use std::{
    borrow::Cow,
    collections::hash_map::DefaultHasher,
    collections::{HashMap, HashSet},
    hash::{Hash, Hasher},
    sync::{Arc, Mutex, OnceLock},
};

use super::{
    normalized_f32_bits, BackdropBlurStyle, Color, CompositingLayerSpec, CustomPaintStyle,
    HostTree, IconStyle, ImageFit, ImageRequest, OverlayStyle, PathStyle, Point, StaticLayerSpec,
    Stroke, TextStyle, UiId, UiImageSource, UiNode, UiNodeKind, UiPath, UiPathCommand, UiRect,
    UiScale, VisualStyle,
};

mod compiler;
mod damage;
mod memory;
mod phase;
mod primitive;
mod projection;
mod scene;
mod scroll_cache;
mod signature;
mod transform;

pub use compiler::{compile_scene, compile_scene_root, scene_root_ids};
pub use damage::compositing_layer_damage;
pub(crate) use memory::estimate_scene_commands_bytes;
pub use phase::commands_for_phase;
pub use primitive::{RenderPhase, ScenePrimitive, ScenePrimitiveKind, ScrollRasterSpec};
pub(crate) use scene::patch_compositing_layer_spec;
pub use scene::Scene;
pub use scroll_cache::scroll_raster_command_snapshot_exists;
pub(crate) use scroll_cache::{
    scroll_raster_command_cache_usage, set_scroll_raster_command_cache_budget,
    trim_scroll_raster_command_cache,
};
#[doc(hidden)]
pub use transform::translate_scene_primitive_for_backend;

#[path = "shadow_test.rs"]
#[cfg(test)]
mod shadow_tests;
#[path = "render_test.rs"]
#[cfg(test)]
mod tests;