pascalabcnet/SyntaxTree/tree/SyntaxGenerator.md
2017-06-01 13:54:12 +03:00

1.3 KiB
Raw Blame History

Генерация кода для узлов со списками по шаблону

Переменные шаблона записываются внутри символов <# и #> и могут иметь следующий вид:

  • <#NodeName#> - название класса синтаксического узла
  • <#ListElementType#> - тип элементов списка
  • <#ListName#> - название поля, имеющиего тип List<T>

Шаблоны генерации находятся в папке SyntaxTemplates:

  1. SyntaxWithListConstructors - шаблон генерации конструкторов.
  2. SyntaxWithListMethods - шаблон генерации методов.

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