Skip to main content

pax_runtime_api/
lib.rs

1//! Public runtime API types shared across Pax crates, user components, and platform backends.
2//!
3//! Most names are reexported at the crate root for compatibility, while their source modules
4//! provide the browsing ontology used by the generated API docs.
5
6use std::cell::{Cell, RefCell};
7use std::collections::{HashMap, HashSet, VecDeque};
8use std::fmt::Display;
9use std::hash::{Hash, Hasher};
10use std::ops::{Add, Deref, Mul, Neg, Sub};
11use std::rc::{Rc, Weak};
12use std::time::Instant;
13
14use crate::constants::COMMON_PROPERTIES_TYPE;
15use crate::math::Space;
16use kurbo::BezPath;
17pub use paste;
18pub use pax_message::serde;
19pub use pax_message::*;
20pub use pax_value::numeric::Numeric;
21pub use pax_value::{CoercionRules, ImplToFromPaxAny, PaxValue, ToPaxValue};
22use piet::UnitPoint;
23use properties::{PropertyValue, UntypedProperty};
24use serde::{Deserialize, Serialize};
25
26pub mod animation;
27pub mod color;
28pub mod constants;
29pub mod cursor;
30pub mod drawing;
31pub mod events;
32pub mod layout;
33pub mod math;
34pub mod pax_value;
35pub mod platform;
36pub mod properties;
37pub mod rendering;
38pub mod store;
39pub mod transform;
40pub mod unit_value;
41pub mod variables;
42
43pub use animation::*;
44pub use color::*;
45pub use drawing::*;
46pub use events::*;
47pub use layout::*;
48pub use pax_value::functions;
49pub use pax_value::functions::register_function;
50pub use pax_value::functions::Functions;
51pub use pax_value::functions::HelperFunctions;
52pub use platform::*;
53pub use properties::Property;
54pub use rendering::*;
55pub use store::*;
56pub use transform::*;
57pub use unit_value::*;
58pub use variables::*;