dioxus/packages/core/src/lib.rs

77 lines
2.2 KiB
Rust
Raw Normal View History

#![allow(non_snake_case)]
2021-07-29 18:04:09 -04:00
#![doc = include_str!("../README.md")]
2021-01-14 02:56:41 -05:00
2021-08-31 12:28:44 -04:00
/*
Navigating this crate:
- virtual_dom: the primary entrypoint for the crate
- scheduler: the core interior logic called by virtual_dom
- 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-08-31 12:28:44 -04:00
Some utilities
*/
pub mod bumpframe;
pub mod childiter;
pub mod component;
pub mod context;
pub mod diff;
pub mod diff_stack;
pub mod events;
pub mod heuristics;
pub mod hooklist;
pub mod hooks;
pub mod mutations;
pub mod nodes;
pub mod scheduler;
pub mod scope;
pub mod util;
pub mod virtual_dom;
2021-02-03 02:26:04 -05:00
2021-02-12 16:11:33 -05:00
pub(crate) mod innerlude {
2021-08-31 12:28:44 -04:00
pub(crate) use crate::bumpframe::*;
pub(crate) use crate::childiter::*;
2021-05-15 12:03:08 -04:00
pub use crate::component::*;
2021-07-09 01:36:18 -04:00
pub use crate::context::*;
2021-08-31 12:28:44 -04:00
pub(crate) use crate::diff::*;
2021-08-23 10:43:49 -04:00
pub use crate::diff_stack::*;
2021-05-15 12:03:08 -04:00
pub use crate::events::*;
2021-07-15 04:17:45 -04:00
pub use crate::heuristics::*;
pub use crate::hooklist::*;
2021-07-27 11:28:05 -04:00
pub use crate::hooks::*;
2021-08-22 17:08:25 -04:00
pub use crate::mutations::*;
2021-05-15 12:03:08 -04:00
pub use crate::nodes::*;
2021-08-25 15:54:33 -04:00
pub use crate::scheduler::*;
2021-07-09 01:42:26 -04:00
pub use crate::scope::*;
2021-07-09 01:37:34 -04:00
pub use crate::util::*;
2021-05-15 12:03:08 -04:00
pub use crate::virtual_dom::*;
2021-07-18 12:39:32 -04:00
pub type DomTree<'a> = Option<VNode<'a>>;
pub type FC<P> = fn(Context<P>) -> DomTree;
2021-02-20 21:59:16 -05:00
2021-07-12 23:44:20 -04:00
pub use dioxus_core_macro::{format_args_f, html, rsx};
2021-07-11 19:31:07 -04:00
}
2021-02-12 00:29:46 -05:00
2021-08-31 12:28:44 -04:00
pub use crate::innerlude::{
format_args_f, html, rsx, Context, DiffInstruction, DioxusElement, DomEdit, DomTree, ElementId,
EventPriority, LazyNodes, MountType, Mutations, NodeFactory, Properties, ScopeId,
SuspendedContext, SyntheticEvent, UiEvent, VNode, VirtualDom, FC,
};
pub mod prelude {
pub use crate::component::{fc_to_builder, Fragment, Properties};
pub use crate::context::Context;
pub use crate::hooks::*;
pub use crate::innerlude::{DioxusElement, DomTree, LazyNodes, Mutations, NodeFactory, FC};
pub use crate::nodes::VNode;
pub use crate::VirtualDom;
pub use dioxus_core_macro::{format_args_f, html, rsx, Props};
}
2021-07-11 19:31:07 -04:00
pub mod exports {
2021-08-25 15:54:33 -04:00
//! Important dependencies that are used by the rest of the library
// the foundation of this library
pub use bumpalo;
2021-01-14 20:56:28 -05:00
}