怎样修改xtext的model

怎样修改xtext的model

方法一:直接使用INode的方法,拿到对应节点的的偏移量,从而决定插入位置,然后通过直接操作文件的方式来修改文件和保存(需要注意的是,这里要注意format的问题),然后让Xtext的builder来进行自动编译,编译完成后会生成新的model

方法二:直接使用INode的方法,拿到对应节点的的偏移量,从而决定插入位置,然后XtextReousrce的update方法来修改Model,然后通过Resource的save方法将XtextResource的内容保存到文件中去,在然后让Xtext的builder来进行自动编译,编译完成后会生成新的model

xResource.update(start, end - start, changeObject.getValue());
xResource.save(SaveOptions.newBuilder().noValidation().format().getOptions().toOptionsMap());

对于复杂的Xtext model,Xtext的专家建议还是使用第一种方法;对于没有使用到Xbase的model,可以使用第二种方法。

猜你喜欢

转载自blog.csdn.net/lantianjialiang/article/details/81127449