Вопрос
Я использую плагин XText для Eclipse, чтобы определить мой язык и генерировать некоторые файлы из него. Проект большой, и я хотел бы использовать несколько генераторов для генерации моих файлов, в дополнение к генератору по умолчанию, сгенерированному плагином.
Я попробовал это решение http://www.eclipse.org/forums/index.php/t/263021/ , но не работает, выглядит как это связано с старой версией XText.
Например, у меня по умолчанию
class com.company.mylang.generator.MylangGenerator implements IGenerator {...}
.
Мне нужно добавить другой
class com.company.mylang.generator.MylangGenerator2 implements IGenerator {...}
.
, который работает как часть сборки Eclipse.
Решение
Композитный генератор может работать.Ваш MyLanggenerator может быть реализован как композитный и делегат другим генераторам, вероятно, в зависимости от некоторой конфигурации или состояния в ресурсе.
class MylangCompositeGenerator implements IGenerator {
@Inject MylangGenerator gen
@Inject MylangGenerator2 gen2
def doGenerate(Resource input, IFileSystemAccess fsa) {
gen.doGenerator(input, fsa)
gen2.doGenerator(input, fsa)
}
}
. Не связан с StackOverflow