Образцы из Xpand - - PullRequest
       57

Образцы из Xpand -

2 голосов
/ 18 января 2009

Могу ли я получить несколько хороших учебников по XP и ... мне нужно получить информацию о таких командах, как LET. Было бы лучше, если бы кто-нибудь мог выложить на него несколько образцов.

Проблема, с которой я сталкиваюсь, состоит в следующем: я запускаю цикл for и после проверки некоторых условий мне нужно увеличить счетчик. но я не могу этого сделать. когда я увеличиваю счетчик, он выводится в выходной файл.

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 21 января 2009

Существует обработанный пример , в котором шаблоны Ant-скриптов. Эта же статья переиздана на DZone.

В частности, в этом документе представлен этот пример для оператора LET:

<<LET packageName + "." + className AS fqn>>
  the fully qualified name is: <<fqn>>;
<<ENDLET>>

Наконец, из этого поста на openArchitecureWare forum :

Оператор LET действительно прост: он создает локальную константу с указанным значением и областью видимости, в которой эта константа видима. Это также означает, что инструкция LET непригодна для циклического поведения.

На самом деле, если вы пытаетесь выполнить цикл, вы в основном решаете проблемы не в том месте. Шаблоны XPand предназначены только для генерации текстовых артефактов, тогда как большая часть логики, лежащей в основе генерации, должна быть реализована в Xtensions. Xtend также не имеет конструкции цикла, но можно найти альтернативу, если вы хотите следовать функциональной парадигме программирования. Также обратите внимание на метод indexOf в oaw.List.

0 голосов
/ 14 апреля 2015

Этот ответ относится ко второму вопросу, опубликованному с использованием второго абзаца. Вы можете остановить вывод значения выражения с помощью цепного оператора (->). Например:

<<counterInc()->"">>

См. Пример ' throwError (Object o) ' в официальной справочной онлайн-документации здесь: http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.xpand.doc%2Fhelp%2Fch04s02.html

Вы также можете найти раздел ' Расширения счетчика ' полезным для операций счетчика в Xpand

...