//! L1 markup: the concrete syntax of markup grammars (#6835).
//!
//! Markup is a grammar × profile matrix. The grammar is the markup language
//! family (Vue now; Svelte, Angular and others later). The profile selects
//! the host rules: [`profile::Document`] for HTML and in-DOM templates
//! (petite-vue) and [`profile::Component`] for SFC `<template>` content.
//!
//! One shared state machine, [`lex::Lexer`], is generic over the profile
//! and its event [`token::Sink`], so every per-profile branch is resolved at
//! compile time. Directive-name decomposition is not part of the lexer: it
//! is a dialect syntax hook ([`directive::DirectiveSyntax`]), like an MLIR
//! custom assembly format.
//!
//! The profile-generic implementation is compiled in L1 unit tests and with
//! the `native-markup-lex` feature. Default builds retain that skeleton API,
//! while the surface tree and compiler use the same L1-owned compatibility
//! tokenizer. Switching products to the generic lexer waits for the compiler
//! fix-history gate #6880 and parity validation.
//! The directive hook is still a skeleton.
//! Design: <https://github.com/ubugeeei-prod/vize/issues/6836#issuecomment-5847794929>.
pub use ;
pub use ;
pub use ;
pub use ;
pub use ;