Skip to main content

oak_go/language/
mod.rs

1use oak_core::{Language, LanguageCategory};
2use serde::{Deserialize, Serialize};
3
4/// Go 语言定义
5#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Default, Serialize, Deserialize)]
6pub struct GoLanguage {}
7
8impl GoLanguage {
9    pub fn new() -> Self {
10        Self {}
11    }
12}
13
14impl Language for GoLanguage {
15    const NAME: &'static str = "go";
16    const CATEGORY: LanguageCategory = LanguageCategory::Programming;
17
18    type TokenType = crate::kind::GoSyntaxKind;
19    type ElementType = crate::kind::GoSyntaxKind;
20    type TypedRoot = crate::ast::GoRoot;
21}