Enum notedown_ast::nodes::ASTKind
source · [−]pub enum ASTKind {
Show 14 variants
Statements(ASTNodes),
Paragraph(ASTNodes),
Delimiter(Box<Delimiter>),
Header(Box<Header>),
TableView(TableView),
ListView(ListView),
QuoteNode(Box<QuoteBlock>),
CodeNode(Box<CodeNode>),
MathNode(Box<MathNode>),
LinkNode(SmartLink),
TextSpan(Box<TextSpan>),
StyledSpan(Box<StyleNode>),
Command(Box<Command>),
Value(Box<Value>),
}
Expand description
ASTKing
Typed info of the Node
- Block: Statements, Paragraph
- Span: Text, Styled
- Node: Code, Math, Link, Command
Notice
If a constructor returns individual elements, then interface accept what is
needed (T
).
If a constructor returns ASTNode
, then the interface implements
polymorphic input (impl Into<T>
).
Variants
Statements(ASTNodes)
Top Scope
Paragraph(ASTNodes)
- block only
Delimiter(Box<Delimiter>)
- block only
Header(Box<Header>)
- block only
TableView(TableView)
- block only
ListView(ListView)
- block only
QuoteNode(Box<QuoteBlock>)
- block only
CodeNode(Box<CodeNode>)
- block + inline
MathNode(Box<MathNode>)
- block + inline
LinkNode(SmartLink)
- block + inline
TextSpan(Box<TextSpan>)
- inline only
StyledSpan(Box<StyleNode>)
- inline only
Command(Box<Command>)
- context sensitive
Value(Box<Value>)
- never bared
Implementations
sourceimpl ASTKind
impl ASTKind
sourcepub fn command_external<S: Into<String>>(
cmd: S,
data: Vec<u8>,
r: MaybeRanged
) -> ASTNode
pub fn command_external<S: Into<String>>(
cmd: S,
data: Vec<u8>,
r: MaybeRanged
) -> ASTNode
Constructor of [ExternalCommand
]
sourceimpl ASTKind
impl ASTKind
sourcepub fn as_header(&self) -> Option<Header>
pub fn as_header(&self) -> Option<Header>
Returns a copy of the elements, return Option::None
if not match this kind.
sourcepub fn as_list_view(&self) -> Option<ListView>
pub fn as_list_view(&self) -> Option<ListView>
Returns a copy of the elements, return Option::None
if not match this kind.
sourcepub fn as_table_view(&self) -> Option<TableView>
pub fn as_table_view(&self) -> Option<TableView>
Returns a copy of the elements, return Option::None
if not match this kind.
sourcepub fn as_code(&self) -> Option<CodeNode>
pub fn as_code(&self) -> Option<CodeNode>
Returns a copy of the elements, return Option::None
if not match this kind.
sourcepub fn as_math(&self) -> Option<MathNode>
pub fn as_math(&self) -> Option<MathNode>
Returns a copy of the elements, return Option::None
if not match this kind.
sourcepub fn as_link(&self) -> Option<SmartLink>
pub fn as_link(&self) -> Option<SmartLink>
Returns a copy of the elements, return Option::None
if not match this kind.
sourcepub fn as_style_span(&self) -> Option<StyleNode>
pub fn as_style_span(&self) -> Option<StyleNode>
Returns a copy of the elements, return Option::None
if not match this kind.
sourcepub fn as_text_span(&self) -> Option<TextSpan>
pub fn as_text_span(&self) -> Option<TextSpan>
Returns a copy of the elements, return Option::None
if not match this kind.
sourceimpl ASTKind
impl ASTKind
sourcepub fn code_inline(code: impl Into<String>, range: MaybeRanged) -> ASTNode
pub fn code_inline(code: impl Into<String>, range: MaybeRanged) -> ASTNode
Constructor of CodeNode
sourcepub fn code_block(
code: impl Into<String>,
language: impl Into<String>,
range: MaybeRanged
) -> ASTNode
pub fn code_block(
code: impl Into<String>,
language: impl Into<String>,
range: MaybeRanged
) -> ASTNode
Constructor of CodeNode
sourceimpl ASTKind
impl ASTKind
sourcepub fn raw_html_inline(msg: impl Into<String>, range: MaybeRanged) -> ASTNode
pub fn raw_html_inline(msg: impl Into<String>, range: MaybeRanged) -> ASTNode
Insert raw html text
sourcepub fn raw_html_block(msg: impl Into<String>, range: MaybeRanged) -> ASTNode
pub fn raw_html_block(msg: impl Into<String>, range: MaybeRanged) -> ASTNode
Inset raw html block
sourceimpl ASTKind
impl ASTKind
sourcepub fn math_inline(math: impl Into<String>, range: MaybeRanged) -> ASTNode
pub fn math_inline(math: impl Into<String>, range: MaybeRanged) -> ASTNode
Constructor of MathNode
sourcepub fn math_display(math: impl Into<String>, range: MaybeRanged) -> ASTNode
pub fn math_display(math: impl Into<String>, range: MaybeRanged) -> ASTNode
Constructor of MathNode
sourcepub fn math_block(math: impl Into<String>, range: MaybeRanged) -> ASTNode
pub fn math_block(math: impl Into<String>, range: MaybeRanged) -> ASTNode
Constructor of MathNode
sourceimpl ASTKind
impl ASTKind
sourcepub fn italic_bold(children: ASTNodes, range: MaybeRanged) -> ASTNode
pub fn italic_bold(children: ASTNodes, range: MaybeRanged) -> ASTNode
Constructor of StyleNode
sourcepub fn undercover(children: ASTNodes, range: MaybeRanged) -> ASTNode
pub fn undercover(children: ASTNodes, range: MaybeRanged) -> ASTNode
Constructor of StyleNode
sourcepub fn superscript(children: ASTNodes, range: MaybeRanged) -> ASTNode
pub fn superscript(children: ASTNodes, range: MaybeRanged) -> ASTNode
Constructor of StyleNode
sourceimpl ASTKind
impl ASTKind
sourcepub fn hard_break(range: MaybeRanged) -> ASTNode
pub fn hard_break(range: MaybeRanged) -> ASTNode
Aka. <br>
sourcepub fn soft_break(range: MaybeRanged) -> ASTNode
pub fn soft_break(range: MaybeRanged) -> ASTNode
Aka. \n
sourcepub fn escaped(text: &str, range: MaybeRanged) -> Result<ASTNode>
pub fn escaped(text: &str, range: MaybeRanged) -> Result<ASTNode>
Constructor of TextSpan::Escaped
sourcepub fn escaped_char(c: char, range: MaybeRanged) -> ASTNode
pub fn escaped_char(c: char, range: MaybeRanged) -> ASTNode
Constructor of TextSpan::Escaped
sourcepub fn escaped_html(_: char, _: MaybeRanged) -> Result<ASTNode>
pub fn escaped_html(_: char, _: MaybeRanged) -> Result<ASTNode>
Constructor of TextSpan::Normal
sourcepub fn emoji(text: &str, range: MaybeRanged) -> Result<ASTNode>
pub fn emoji(text: &str, range: MaybeRanged) -> Result<ASTNode>
Constructor of TextSpan::Emoji
sourceimpl ASTKind
impl ASTKind
sourcepub fn image_link(src: impl Into<String>, range: MaybeRanged) -> ASTNode
pub fn image_link(src: impl Into<String>, range: MaybeRanged) -> ASTNode
Constructor for ImageLink
sourcepub fn image_link_alt(
src: impl Into<String>,
alt: impl Into<String>,
range: MaybeRanged
) -> ASTNode
pub fn image_link_alt(
src: impl Into<String>,
alt: impl Into<String>,
range: MaybeRanged
) -> ASTNode
Constructor for ImageLink
sourcepub fn hyper_link(src: impl Into<String>, range: MaybeRanged) -> ASTNode
pub fn hyper_link(src: impl Into<String>, range: MaybeRanged) -> ASTNode
Constructor for HyperLink
sourcepub fn hyper_link_text(
src: impl Into<String>,
text: impl Into<String>,
range: MaybeRanged
) -> ASTNode
pub fn hyper_link_text(
src: impl Into<String>,
text: impl Into<String>,
range: MaybeRanged
) -> ASTNode
Constructor for HyperLink
sourceimpl ASTKind
impl ASTKind
sourcepub fn ordered_list(children: Vec<ListItem>, r: MaybeRanged) -> ASTNode
pub fn ordered_list(children: Vec<ListItem>, r: MaybeRanged) -> ASTNode
Constructor of OrderedList
sourcepub fn orderless_list(children: Vec<ListItem>, r: MaybeRanged) -> ASTNode
pub fn orderless_list(children: Vec<ListItem>, r: MaybeRanged) -> ASTNode
Constructor of OrderlessList
sourceimpl ASTKind
impl ASTKind
sourcepub fn quote(body: ASTNodes, r: MaybeRanged) -> ASTNode
pub fn quote(body: ASTNodes, r: MaybeRanged) -> ASTNode
Constructor of QuoteBlock
sourcepub fn quote_style(
body: ASTNodes,
style: impl Into<String>,
r: MaybeRanged
) -> ASTNode
pub fn quote_style(
body: ASTNodes,
style: impl Into<String>,
r: MaybeRanged
) -> ASTNode
Constructor of QuoteBlock
sourceimpl ASTKind
impl ASTKind
sourcepub fn statements(children: ASTNodes, range: MaybeRanged) -> ASTNode
pub fn statements(children: ASTNodes, range: MaybeRanged) -> ASTNode
Constructor of ASTKind::Statements
sourcepub fn paragraph(children: ASTNodes, range: MaybeRanged) -> ASTNode
pub fn paragraph(children: ASTNodes, range: MaybeRanged) -> ASTNode
Constructor of ASTKind::Paragraph
sourcepub fn hr(range: MaybeRanged) -> ASTNode
pub fn hr(range: MaybeRanged) -> ASTNode
Constructor of Delimiter::HorizontalRule
Trait Implementations
sourceimpl ContextAware for ASTKind
impl ContextAware for ASTKind
sourcefn context_aware(&self, offset: u32) -> ContextKind
fn context_aware(&self, offset: u32) -> ContextKind
sourceimpl Into<ASTKind> for OrderedList
impl Into<ASTKind> for OrderedList
sourceimpl Into<ASTKind> for OrderlessList
impl Into<ASTKind> for OrderlessList
sourceimpl Into<ASTKind> for QuoteBlock
impl Into<ASTKind> for QuoteBlock
sourceimpl Into<ASTKind> for SimpleTable
impl Into<ASTKind> for SimpleTable
sourceimpl IntoASTNode for ASTKind
impl IntoASTNode for ASTKind
sourcefn into_node(self, range: MaybeRanged) -> ASTNode
fn into_node(self, range: MaybeRanged) -> ASTNode
ASTNode
with positionimpl Eq for ASTKind
impl StructuralEq for ASTKind
impl StructuralPartialEq for ASTKind
Auto Trait Implementations
impl RefUnwindSafe for ASTKind
impl Send for ASTKind
impl Sync for ASTKind
impl Unpin for ASTKind
impl UnwindSafe for ASTKind
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
sourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.