Expand description
ยง๐ ๏ธ Developer Guide
This directory contains the core logic implementation of the project. Below are instructions for a quick start.
ยง๐ฆ Quick Start
ยงCore API Usage
// Example: Basic calling workflow
fn main() {
// 1. Initialization
// 2. Execute core logic
// 3. Handle returned results
}ยง๐ Module Description
- lib.rs: Exports public interfaces and core traits.
- parser/ (if exists): Implements specific syntax parsing logic.
- ast/ (if exists): Defines the syntax tree structure.
ยง๐๏ธ Architecture Design
The project follows the general architectural specifications of the Oak ecosystem, emphasizing:
- Immutability: Uses the Green/Red Tree structure to ensure efficient sharing of syntax trees.
- Fault Tolerance: Core logic is highly inclusive of erroneous input.
- Scalability: Convenient for downstream tools to perform secondary development. Haskell support for the Oak language framework.
Re-exportsยง
pub use crate::ast::HaskellRoot;pub use crate::builder::HaskellBuilder;pub use crate::lsp::highlighter::HaskellHighlighter;pub use crate::lsp::HaskellLanguageService;pub use crate::mcp::serve_haskell_mcp;
Modulesยง
- ast
- Abstract Syntax Tree (AST) definitions for Haskell.
- builder
- Incremental tree builder for Haskell.
- lsp
- Language Server Protocol (LSP) and editor integration for Haskell.
- mcp
- Model Context Protocol (MCP) support for Haskell.
Structsยง
- Haskell
Language - Haskell language definition.
- Haskell
Lexer - Lexer for the Haskell language.
- Haskell
Parser - A parser for the Haskell language.
Enumsยง
- Haskell
Element Type - Haskell element types. Represents an element type in a Haskell source file.
- Haskell
Token Type - Haskell token types. Token types for the Haskell language.
Type Aliasesยง
- Haskell
Token - Haskell token types. A token in the Haskell language.