XText с использованием информации о типе из внешней модели EMF

Я рассматриваю возможность использования XText для расширения DSL для языка, который я использую ежедневно и который имеет некоторые очевидные недостатки (AS3, через FlashBuilder).

У меня работает система генерации грамматики и кода, где приведенное ниже объявление генерирует класс значений с конструктором, переменными уровня класса, геттерами и т. д.

class Person (name: String, age: int)

Это нормально, но я хотел бы, чтобы типы, определенные в библиотеке flash player, а также типы, которые я определяю в пользовательских проектах, были доступны в моем расширении DSL. В приведенном выше коде и String, и int взяты из родной флеш-библиотеки.

Я предполагаю, что 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?

Спасибо


person BefittingTheorem    schedule 25.10.2011    source источник


Ответы (1)


Предположим, что Flash Builder поставляется с метамоделью на основе EMF. то «вещь», которую вам нужно сделать, это реализовать IResourceServiceProvider. Я написал в блоге, что делаю то же самое для моделей uml: http://christiandietrich.wordpress.com/2011/07/17/xtext-2-0-and-uml/

и нет: xtend — это язык программирования в современном стиле, который компилируется в Java и имеет хорошую поддержку шаблонов.

person Christian Dietrich    schedule 28.10.2011