/**
* Quand un terme sauvegardé dans la liste des termes sauvegardés est séléectionné il est possible
* de voir son AST via le menu, ou le raccourci Ctrl+I / Cmd+I
*
* @param evt L'event qui a trigger l'action.
*/
private void menuViewASTActionPerformed(java.awt.event.ActionEvent evt) {
if (!termSavedList.isSelectionEmpty()) {
int index = termSavedList.getSelectedIndex();
String term = saveTermModel.getElementAt(index);
try {
ANTLRInputStream inputStream = new ANTLRInputStream(term);
LambdaLexer lexer = new LambdaLexer(inputStream);
CommonTokenStream tokens = new CommonTokenStream(lexer);
LambdaParser parser = new LambdaParser(tokens);
ParseTree tree = parse(term);
TreeViewer viewer = new TreeViewer(Arrays.asList(parser.getRuleNames()), tree);
viewer.open();
} catch (ParseCancellationException e) {
workSpace.append("Don't try to watch AST of illformed term please");
}
}
}
LambdaInterpreterGUI.java 文件源码
java
阅读 21
收藏 0
点赞 0
评论 0
项目:Lambda-Interpreter
作者:
评论列表
文章目录