📄 data.g
字号:
options {
language = "Sather";
}
class DATA_PARSER extends Parser;
{
println ( s : STR ) is
#OUT + s + "\n";
end;
}
file: ( sh:SHORT {println(sh.text);}
| st:STRING {println("\"" + st.text + "\"");}
)+
;
class DATA_LEXER extends Lexer;
options {
charVocabulary = '\u0000'..'\u00FF';
}
SHORT
: '\0' high:. lo:.
{
v : INT := high.int.lshift(8) + lo.int;
%setText(""+v);
}
;
STRING
: '\1'! // begin string (discard)
( ~'\2' )*
'\2'! // end string (discard)
;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -