2021-07-15 07:38:09 +00:00
|
|
|
#![allow(non_snake_case)]
|
2021-07-29 22:04:09 +00:00
|
|
|
#![doc = include_str!("../README.md")]
|
2021-01-14 07:56:41 +00:00
|
|
|
|
2021-08-31 16:28:44 +00:00
|
|
|
/*
|
|
|
|
Navigating this crate:
|
|
|
|
- virtual_dom: the primary entrypoint for the crate
|
2021-09-07 22:25:57 +00:00
|
|
|
- scheduler: the core interior logic called by the [`VirtualDom`]
|
2021-08-31 16:28:44 +00:00
|
|
|
- nodes: the definition of VNodes, listeners, etc.
|
|
|
|
- diff: the stackmachine-based diffing algorithm
|
|
|
|
- hooks: foundational hooks that require crate-private APIs
|
|
|
|
- mutations: DomEdits/NodeRefs and internal API to create them
|
2021-07-05 22:37:15 +00:00
|
|
|
|
2021-08-31 16:28:44 +00:00
|
|
|
Some utilities
|
|
|
|
*/
|
2021-11-03 23:55:02 +00:00
|
|
|
pub(crate) mod component;
|
|
|
|
pub(crate) mod diff;
|
|
|
|
pub(crate) mod lazynodes;
|
|
|
|
pub(crate) mod mutations;
|
|
|
|
pub(crate) mod nodes;
|
|
|
|
pub(crate) mod scope;
|
2021-11-05 21:15:59 +00:00
|
|
|
pub(crate) mod scopearena;
|
2021-11-03 23:55:02 +00:00
|
|
|
pub(crate) mod virtual_dom;
|
2021-02-03 07:26:04 +00:00
|
|
|
|
2021-02-12 21:11:33 +00:00
|
|
|
pub(crate) mod innerlude {
|
2021-05-15 16:03:08 +00:00
|
|
|
pub use crate::component::*;
|
2021-11-09 17:18:45 +00:00
|
|
|
pub use crate::diff::*;
|
2021-11-01 06:41:23 +00:00
|
|
|
pub use crate::lazynodes::*;
|
2021-08-22 21:08:25 +00:00
|
|
|
pub use crate::mutations::*;
|
2021-05-15 16:03:08 +00:00
|
|
|
pub use crate::nodes::*;
|
2021-07-09 05:42:26 +00:00
|
|
|
pub use crate::scope::*;
|
2021-11-05 21:15:59 +00:00
|
|
|
pub use crate::scopearena::*;
|
2021-05-15 16:03:08 +00:00
|
|
|
pub use crate::virtual_dom::*;
|
2021-11-01 06:41:23 +00:00
|
|
|
|
2021-11-28 21:25:42 +00:00
|
|
|
pub type Element = Option<VPortal>;
|
2021-12-10 02:19:31 +00:00
|
|
|
pub type Component<P> = for<'a> fn(Context<'a>, &'a P) -> Element;
|
2021-07-11 23:31:07 +00:00
|
|
|
}
|
2021-02-12 05:29:46 +00:00
|
|
|
|
2021-08-31 16:28:44 +00:00
|
|
|
pub use crate::innerlude::{
|
2021-12-10 02:19:31 +00:00
|
|
|
Attribute, Component, Context, DioxusElement, DomEdit, Element, ElementId, EventHandler,
|
|
|
|
EventPriority, IntoVNode, LazyNodes, Listener, MountType, Mutations, NodeFactory, Properties,
|
|
|
|
SchedulerMsg, ScopeId, UserEvent, VElement, VFragment, VNode, VirtualDom,
|
2021-08-31 16:28:44 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
pub mod prelude {
|
2021-11-08 01:59:09 +00:00
|
|
|
pub use crate::component::{fc_to_builder, Fragment, Properties};
|
2021-11-03 23:55:02 +00:00
|
|
|
pub use crate::innerlude::Context;
|
2021-12-10 02:19:31 +00:00
|
|
|
pub use crate::innerlude::{
|
|
|
|
Component, DioxusElement, Element, EventHandler, LazyNodes, NodeFactory, Scope,
|
|
|
|
};
|
2021-08-31 16:28:44 +00:00
|
|
|
pub use crate::nodes::VNode;
|
|
|
|
pub use crate::VirtualDom;
|
|
|
|
}
|
|
|
|
|
2021-07-11 23:31:07 +00:00
|
|
|
pub mod exports {
|
2021-08-25 19:54:33 +00:00
|
|
|
//! Important dependencies that are used by the rest of the library
|
|
|
|
// the foundation of this library
|
2021-07-15 08:09:28 +00:00
|
|
|
pub use bumpalo;
|
2021-10-04 05:28:04 +00:00
|
|
|
pub use futures_channel;
|
2021-01-15 01:56:28 +00:00
|
|
|
}
|