lib.rs 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. //! Dioxus Core
  2. //! ----------
  3. //!
  4. //!
  5. //!
  6. //!
  7. //!
  8. //!
  9. //!
  10. #[cfg(feature = "serialize")]
  11. pub mod serialize;
  12. pub mod arena;
  13. pub mod bumpframe;
  14. pub mod component;
  15. pub mod context;
  16. pub mod diff;
  17. pub mod error;
  18. pub mod events;
  19. pub mod hooklist;
  20. pub mod hooks;
  21. pub mod nodebuilder;
  22. pub mod nodes;
  23. pub mod scope;
  24. pub mod signals;
  25. pub mod styles;
  26. pub mod tasks;
  27. pub mod util;
  28. pub mod virtual_dom;
  29. pub mod builder {
  30. pub use super::nodebuilder::*;
  31. }
  32. // types used internally that are important
  33. pub(crate) mod innerlude {
  34. pub use crate::bumpframe::*;
  35. pub use crate::component::*;
  36. pub use crate::context::*;
  37. pub use crate::diff::*;
  38. pub use crate::error::*;
  39. pub use crate::events::*;
  40. pub use crate::hooks::*;
  41. pub use crate::nodebuilder::*;
  42. pub use crate::nodes::*;
  43. pub use crate::scope::*;
  44. pub use crate::util::*;
  45. pub use crate::virtual_dom::*;
  46. pub type FC<P> = fn(Context<P>) -> VNode;
  47. // Re-export the FC macro
  48. pub use crate::nodebuilder as builder;
  49. pub use dioxus_core_macro::{html, rsx};
  50. }
  51. /// Re-export common types for ease of development use.
  52. /// Essential when working with the html! macro
  53. pub mod prelude {
  54. pub use crate::component::{fc_to_builder, Fragment, Properties};
  55. pub use crate::context::Context;
  56. use crate::nodes;
  57. pub use crate::styles::{AsAttr, StyleBuilder};
  58. pub use nodes::*;
  59. pub use crate::nodebuilder::LazyNodes;
  60. pub use crate::nodebuilder::{DioxusElement, NodeFactory};
  61. // pub use nodes::iterables::IterableNodes;
  62. /// This type alias is an internal way of abstracting over the static functions that represent components.
  63. pub use crate::innerlude::FC;
  64. // expose our bumpalo type
  65. pub use bumpalo;
  66. pub use bumpalo::Bump;
  67. // Re-export the FC macro
  68. pub use crate::nodebuilder as builder;
  69. // pub use dioxus_core_macro::fc;
  70. pub use dioxus_core_macro::{format_args_f, html, rsx, Props};
  71. pub use crate::diff::DiffMachine;
  72. pub use crate::virtual_dom::ScopeIdx;
  73. // pub use crate::debug_renderer::DebugRenderer;
  74. pub use crate::hooks::*;
  75. }