lib.rs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. use std::any::Any;
  2. use std::hash::BuildHasherDefault;
  3. pub use node_ref::NodeMask;
  4. pub use passes::AnyMapLike;
  5. pub use passes::{run_pass, Dependancy, PassDirection, RunPassView, State, TypeErasedPass};
  6. pub use real_dom::{NodeMut, NodeRef, RealDom};
  7. use rustc_hash::FxHasher;
  8. #[cfg(feature = "dioxus")]
  9. pub mod dioxus;
  10. pub mod layout_attributes;
  11. pub mod node;
  12. pub mod node_ref;
  13. pub mod node_watcher;
  14. mod passes;
  15. pub mod real_dom;
  16. pub mod tree;
  17. pub mod utils;
  18. pub use shipyard::EntityId as NodeId;
  19. // exported for the macro
  20. pub mod exports {
  21. #[doc(hidden)]
  22. pub use rustc_hash::FxHashSet;
  23. pub use shipyard;
  24. }
  25. pub mod prelude {
  26. pub use crate::node::{ElementNode, FromAnyValue, NodeType, OwnedAttributeView, TextNode};
  27. pub use crate::node_ref::{AttributeMaskBuilder, NodeMaskBuilder, NodeView};
  28. pub use crate::passes::{AnyState, Dependancy, State};
  29. pub use crate::real_dom::{NodeImmutable, NodeMut, NodeRef, RealDom};
  30. pub use crate::NodeId;
  31. pub use crate::SendAnyMap;
  32. }
  33. pub type FxDashMap<K, V> = dashmap::DashMap<K, V, BuildHasherDefault<FxHasher>>;
  34. pub type FxDashSet<K> = dashmap::DashSet<K, BuildHasherDefault<FxHasher>>;
  35. pub type SendAnyMap = anymap::Map<dyn Any + Send + Sync + 'static>;