2023-10-29 22:26:52 +00:00
|
|
|
use super::macros::iitem;
|
2023-10-29 21:29:16 +00:00
|
|
|
use super::macros::iselector;
|
2023-10-30 02:31:29 +00:00
|
|
|
|
2023-10-27 17:05:34 +00:00
|
|
|
use super::IHeading;
|
|
|
|
use super::ISection;
|
2023-10-29 21:29:16 +00:00
|
|
|
use crate::error::CustomError;
|
2023-10-27 22:59:40 +00:00
|
|
|
use futures::future::{BoxFuture, FutureExt};
|
2023-10-27 17:05:34 +00:00
|
|
|
|
2023-10-29 19:36:15 +00:00
|
|
|
#[derive(Debug, Clone)]
|
2023-10-27 17:05:34 +00:00
|
|
|
pub(crate) enum IDocumentElement {
|
|
|
|
Heading(IHeading),
|
|
|
|
Section(ISection),
|
|
|
|
}
|
2023-10-27 22:59:40 +00:00
|
|
|
|
2023-10-29 22:54:50 +00:00
|
|
|
iselector!(IDocumentElement, DocumentElement, original, registry, {
|
|
|
|
iitem!(
|
|
|
|
registry,
|
|
|
|
original,
|
|
|
|
(
|
|
|
|
organic::types::DocumentElement::Heading,
|
|
|
|
IDocumentElement::Heading,
|
|
|
|
IHeading
|
|
|
|
),
|
|
|
|
(
|
|
|
|
organic::types::DocumentElement::Section,
|
|
|
|
IDocumentElement::Section,
|
|
|
|
ISection
|
|
|
|
),
|
|
|
|
)
|
|
|
|
});
|