oak_jasm/language/mod.rs
1use crate::syntax::JasmSyntaxKind;
2use oak_core::language::Language;
3
4/// JASM 语言绑定与配置
5#[derive(Clone, Debug, Default)]
6pub struct JasmLanguage {
7 /// 是否启用扩展指令(如 invokedynamic 等)
8 pub extended: bool,
9 /// 是否允许注释
10 pub comments: bool,
11}
12
13impl JasmLanguage {
14 pub fn standard() -> Self {
15 Self { extended: true, comments: true }
16 }
17
18 pub fn minimal() -> Self {
19 Self { extended: false, comments: false }
20 }
21}
22
23impl Language for JasmLanguage {
24 type SyntaxKind = JasmSyntaxKind;
25 type TypedRoot = (); // TODO: 添加 AST 根类型
26}