From 71dbc8c0189d6b2032f3d8f21cbfffa3f8fe0f12 Mon Sep 17 00:00:00 2001 From: Titus Wormer Date: Fri, 9 Sep 2022 10:18:24 +0200 Subject: Add docs to mdx jsx --- src/construct/mdx_jsx_text.rs | 46 ++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 43 insertions(+), 3 deletions(-) (limited to 'src/construct/mdx_jsx_text.rs') diff --git a/src/construct/mdx_jsx_text.rs b/src/construct/mdx_jsx_text.rs index f4cab4e..782e215 100644 --- a/src/construct/mdx_jsx_text.rs +++ b/src/construct/mdx_jsx_text.rs @@ -1,4 +1,34 @@ -//! To do. +//! MDX JSX (text) occurs in the [text][] content type. +//! +//! ## Grammar +//! +//! MDX JSX (text) forms with the following BNF +//! (see [construct][crate::construct] for character groups): +//! +//! ```bnf +//! mdx_jsx_text ::= mdx_jsx +//! +//! ; See the `partial_mdx_jsx` construct for the BNF of that part. +//! ``` +//! +//! See [`mdx_jsx`][mdx_jsx] for more info. +//! +//! ## Tokens +//! +//! * [`MdxJsxTextTag`][Name::MdxJsxTextTag] +//! * see [`mdx_jsx`][mdx_jsx] for more +//! +//! ## Recommendation +//! +//! See [`mdx_jsx`][mdx_jsx] for recommendations. +//! +//! ## References +//! +//! * [`jsx-text.js` in `micromark-extension-mdx-jsx`](https://github.com/micromark/micromark-extension-mdx-jsx/blob/main/dev/lib/jsx-text.js) +//! * [`mdxjs.com`](https://mdxjs.com) +//! +//! [text]: crate::construct::text +//! [mdx_jsx]: crate::construct::partial_mdx_jsx use crate::event::Name; use crate::state::{Name as StateName, State}; @@ -23,13 +53,23 @@ pub fn start(tokenizer: &mut Tokenizer) -> State { } } -/// To do +/// After an MDX JSX (text) tag. +/// +/// ```markdown +/// > | a c +/// ^ +/// ``` pub fn after(tokenizer: &mut Tokenizer) -> State { tokenizer.tokenize_state.token_1 = Name::Data; State::Ok } -/// To do +/// At something that wasn’t an MDX JSX (text) tag. +/// +/// ```markdown +/// > | a < b +/// ^ +/// ``` pub fn nok(tokenizer: &mut Tokenizer) -> State { tokenizer.tokenize_state.token_1 = Name::Data; State::Nok -- cgit