Skip to main content

oak_lua/language/
mod.rs

1//! Lua 语言定义
2//!
3//! 定义Lua 语言的核心结构体,实现了 oak-core Language trait
4
5use oak_core::{Language, LanguageCategory};
6use serde::{Deserialize, Serialize};
7
8/// Lua 语言定义
9#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Serialize, Deserialize)]
10pub struct LuaLanguage {}
11
12impl Language for LuaLanguage {
13    const NAME: &'static str = "lua";
14    const CATEGORY: LanguageCategory = LanguageCategory::Programming;
15
16    type TokenType = crate::kind::LuaSyntaxKind;
17    type ElementType = crate::kind::LuaSyntaxKind;
18    type TypedRoot = crate::ast::LuaRoot;
19}
20
21impl LuaLanguage {
22    /// 创建新的 Lua 语言实例
23    pub fn new() -> Self {
24        Self {}
25    }
26}
27
28impl Default for LuaLanguage {
29    fn default() -> Self {
30        Self {}
31    }
32}