texlang/lib.rs
1//! # Texlang: a TeX language interpreter.
2//!
3//! This crate implements a general purpose TeX language interpreter called Texlang.
4//!
5//! Most of the high level documentation is provided in the [Texcraft website](https://texcraft.dev),
6//! including guided introductions to using Texlang to build TeX interpreters.
7//! The documentation here is mostly for reference.
8
9extern crate texcraft_stdext;
10
11pub mod command;
12pub mod error;
13pub mod parse;
14pub mod prelude;
15pub mod texmacro;
16pub mod token;
17pub mod types;
18pub mod variable;
19pub mod vm;
20
21/// Module that re-exports all of the crate's traits.
22///
23/// This is useful for getting all of the traits in scope in a Rust module:
24/// ```
25/// use texlang::traits::*;
26/// ```
27pub mod traits {
28 pub use super::parse::Parsable;
29 pub use super::vm::ExpandedStream;
30 pub use super::vm::HasComponent;
31 pub use super::vm::HasDefaultBuiltInCommands;
32 pub use super::vm::TexlangState;
33 pub use super::vm::TokenStream;
34}