1

我正在研究使用 XText 为我每天使用的一种语言制作扩展 DSL,并且有一些明显的缺点(AS3,通过 FlashBuilder)。

我有一个语法和代码生成系统工作,下面的声明生成一个值类,带有构造函数、类级变量和吸气剂等。

class Person (name: String, age: int)

这很好,但我希望在 Flash 播放器库中定义类型,以及我在扩展 DSL 中可用的用户项目中定义的类型。在上面的代码中,两者Stringint来自本机闪存库。

我假设 Flash Builder 在内部使用 EMF 核心来表示任何包含的库 (swcs) 和我在项目中定义的任何类型。如果是这种情况,我的问题是:

How can I access the EMF model of FLash Builder?

如果没有 EMF 模型,那么我想我必须自己解析 library.swc 和我的项目的源代码。

Is the Xtend language intended to preform these sort of native filesystem tasks?

谢谢

4

1 回答 1

1

让我们假设 Flash Builder 带有一个基于 EMF 的元模型。那么你要做的“事情”就是实现一个IResourceServiceProvider。我在博客上写过为 uml 模型做同样的事情:http: //christiandietrich.wordpress.com/2011/07/17/xtext-2-0-and-uml/

并没有:xtend 是一种现代风格的编程语言,可以编译为 Java 并且具有很好的模板支持。

于 2011-10-28T16:13:03.310 回答