Skip to main content

oak_python/
lib.rs

1#![doc = include_str!("readme.md")]
2#![feature(new_range_api)]
3#![warn(missing_docs)]
4
5/// AST module.
6pub mod ast;
7/// Builder module.
8pub mod builder;
9/// Language configuration module.
10pub mod language;
11/// Lexer module.
12pub mod lexer;
13/// LSP module.
14#[cfg(any(feature = "lsp", feature = "oak-highlight", feature = "oak-pretty-print"))]
15pub mod lsp;
16/// MCP module.
17#[cfg(feature = "mcp")]
18pub mod mcp;
19
20/// Parser module.
21pub mod parser;
22
23pub use crate::{ast::PythonRoot, builder::PythonBuilder, language::PythonLanguage, lexer::PythonLexer, parser::PythonParser};
24
25/// Highlighter implementation.
26#[cfg(feature = "oak-highlight")]
27pub use crate::lsp::highlighter::PythonHighlighter;
28/// Python token type.
29pub use lexer::token_type::PythonTokenType;
30/// Python element type.
31pub use parser::PythonElementType;