azul_core/lib.rs
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
//! Shared datatypes for azul-* crates
extern crate azul_css;
#[cfg(feature = "opengl")]
extern crate gleam;
#[cfg(feature = "css_parser")]
extern crate azul_css_parser;
/// Useful macros for implementing Azul APIs without duplicating code
#[macro_use]
pub mod macros;
/// Type definitions for various types of callbacks, as well as focus and scroll handling
#[macro_use]
pub mod callbacks;
/// Functions to manage adding fonts + images, garbage collection
pub mod app_resources;
/// Layout and display list creation algorithm, z-index reordering of a `CachedDisplayList`
pub mod display_list;
/// `Dom` construction, `NodeData` and `NodeType` management functions
pub mod dom;
/// Algorithms to create git-like diffs between two doms in linear time
pub mod diff;
/// Contains OpenGL helper functions (to compile / link shaders), `VirtualGlDriver` for unit testing
#[cfg(feature = "opengl")]
pub mod gl;
/// Internal, arena-based storage for Dom nodes
pub mod id_tree;
/// CSS cascading module
pub mod style;
/// Main `Layout` and `GetTextLayout` trait definition
pub mod traits;
/// Async (task, thread, timer) helper functions
pub mod task;
/// `UiDescription` = CSSOM, cascading
pub mod ui_description;
/// Contains functions to build the `Dom`
pub mod ui_state;
/// Handles the UI layout and UI layout solver
pub mod ui_solver;
/// Window creation / interaction with the OS' windowing API
pub mod window;
/// Window state handling / synchronization
pub mod window_state;
// Typedef for possible faster implementation of hashing
pub type FastHashMap<T, U> = ::std::collections::HashMap<T, U>;
pub type FastHashSet<T> = ::std::collections::HashSet<T>;