我正在使用 Eclipse 的 Xtext 框架开发 DSL。
对于内容辅助/代码完成,我有一个昂贵的过程来生成字符串列表。
如何缓存该过程的结果?
长话短说:我的 DSL 与 Groovy 脚本接口。这些脚本提供了我在 DSL 的某些地方提供的方法。即使我使用正则表达式来解析脚本的方法,这也很慢。所以我想缓存脚本分析的结果。
根据我的分析,在验证期间(因此我并不总是有编辑器)和用户打开 DSL 文件时会调用分析代码。
无法判断验证何时结束(代码在私有方法中,Xtext 开发人员拒绝更改)。但我认为在为 Eclipse 编写编辑器/编译器时,这一定是一个常见问题。其他人如何解决这个问题?Eclipse 框架中是否有一些缓存服务?