在工作中,我们使用一种业务规则语言,它最初是为"业务"人员设计的,但现在已经被程序员使用了。IDE/Eclipse插件不是我们所说的"IDE",但现在Eclipse插件已经添加到最新版本的独立IDE中,我们想创建一个具有语法着色,检查等功能的Eclipse编辑器插件。
我一直在看Xtext教程,但似乎不能掌握语法语言的概念,如果我提供一些商业语言的例子,有人可以提供一个语法例子和一些解释,以及它是怎么做的。
例子:
varString is a string initially "Dog"; //String - 'a' can be interchanged with 'an'
varInteger is a integer initially 0; //Integer - 'a' can be interchanged with 'an'
varObject is some MyObject initially MyObject.newInstance( "Foo" ); //Object Creation
while ( varInteger < varObject.size() ) do {
varTemp = methodCall( parm1,
parm2,
parm3, );
varTemp1 = methodCallWithCast( parm1,
parm2,
parm3, ) as a MyObject; //'a' can be interchanged with 'an'
}
if ( varObject.size() > 0 ) then {
}
if ( varObject is not null and
varObject.size() < 0 ) then {
}
请注意样式(括号之后/之前的空格,单独行上的参数),我希望能够检查,因为这是我们所遵循的编码标准,如果不遵循
则抛出错误。谢谢!
您需要了解BNF(请参阅http://en.wikipedia.org/wiki/Backus%E2%80%93Naur_Form),以便了解如何编写语法规则,然后您需要为您的业务规则语言找到参考文档,或者编写您自己的语法规则。这样,您就可以考虑如何配置XText来帮助您。
我怀疑,考虑到您对语言处理工具的理解,将业务规则语言集成到XText中可能比您准备的要多。