Skip to main content

oak_python/
lib.rs

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