Skip to main content

oak_zig/
lib.rs

1#![doc = include_str!("readme.md")]
2#![feature(new_range_api)]
3#![warn(missing_docs)]
4#![doc = include_str!("../readme.md")]
5#![doc(html_logo_url = "https://raw.githubusercontent.com/ygg-lang/oaks/refs/heads/dev/documents/logo.svg")]
6#![doc(html_favicon_url = "https://raw.githubusercontent.com/ygg-lang/oaks/refs/heads/dev/documents/logo.svg")]
7//! Zig support for the Oak language framework.
8
9/// AST module.
10// pub mod ast;
11/// Builder module.
12// // pub mod builder;
13// /// Formatter module.
14// // pub mod formatter;
15// /// Highlighter module.
16// #[cfg(feature = "oak-highlight")]
17// pub mod highlighter;
18/// Kind definition module.
19/// Language configuration module.
20pub mod language;
21/// Lexer module.
22pub mod lexer;
23/// LSP module.
24#[cfg(feature = "lsp")]
25pub mod lsp;
26/// Parser module.
27pub mod parser;
28
29pub use crate::{language::ZigLanguage, lexer::ZigLexer, parser::ZigParser};
30pub use oak_core::{ElementType, TokenType};
31
32/// LSP implementation.
33#[cfg(feature = "lsp")]
34pub use crate::lsp::ZigLanguageService;
35
36// /// MCP service implementation.
37// #[cfg(feature = "mcp")]
38// pub use crate::mcp::serve_zig_mcp;
39pub use lexer::token_type::ZigTokenType;
40pub use parser::element_type::ZigElementType;