Перейти к основному содержимому

Справочник тегов

Каждый тег языка TDC DSL и указание, где он разбирается подробно.

Структура

ТегЧто этоСм.
<!--…-->Комментарий
<tdc>Корневой элементКонфигурация
<env>Окружение: параметры, последовательности, фикстурыКонфигурация
<sequence>Объявление именованной последовательностиПоследовательности
<gen>Генератор данныхГенераторы
<data>Внутри <sequence>: литеральный текст, который склеивается в значение последовательности, а с name — константное полеПоследовательности
<compute>Вычисляемое значениеЯзык вычислений

Макет вывода

ТегЧто этоСм.
<block>Макет одной итоговой карточкиВывод и форматирование
<line>Строка внутри карточкиВывод и форматирование
<data>Внутри <line>: литеральный текст с интерполяциейВывод и форматирование
<before> / <after>Текст до / после всей генерацииВывод и форматирование
<before_block> / <after_block> / <delimiter_block>Текст вокруг / между карточкамиВывод и форматирование
<before_line> / <after_line> / <delimiter_line>Текст вокруг / между строкамиВывод и форматирование

Распределения и выбор

ТегЧто этоСм.
<mix>Распределение: значение, разбитое по точным процентамРаспределения (mix)
<switch>Выбор значения по ключу (таблица соответствий)Таблицы соответствий (switch)
<map>Компактная таблица КЛЮЧ:ЗНАЧ внутри <switch>Таблицы соответствий (switch)
<case>Одна ветка внутри <mix> или <switch>Распределения (mix) · Таблицы соответствий (switch)
<default>Ветка «иначе» внутри <switch>Таблицы соответствий (switch)

Целые записи

ТегЧто этоГде почитать
<pool>Небольшая таблица, построенная до строк; строка берёт из неё одного члена целикомСогласованные записи (pool)

Уникальность

ТегЧто этоСм.
<distinct>Поля/последовательности, не совпадающие в одной строкеБез повторов в строке
<uniq>Комбинация последовательностей, уникальная по всем строкамУникальные значения

<data> стоит в списке дважды, потому что читается двумя способами. Внутри <line> это вывод: литеральный текст, в который подставляются ${{…}}. Внутри <sequence> это данные: без имени — клей между генераторами составной по значению, а с nameконстантное поле, единственное поле, которое не стоит ни одного розыгрыша.

Теги вычислений (внутри <compute>) собраны в отдельный список в справочнике функций вычислений.