Re[6]: Указать контекст синтаксической макры
От: Ziaw Россия  
Дата: 14.04.10 18:46
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>У меня ощущение, что я смотрю эпизод из "Звездных войн" с участием Ёды.

VD>Какой пример нужен?

Загадка мастера Йоды раскрыта. Старый программист на форте он просто. Проедем этот этап, не хочется тратить время.

Z>>Да тут я конечно перегнул с лаконичностью ) просто хотелось иметь возможность передать аст в проект который дебажится и посмотреть его структуру. Сложно писать анализатор того, что неизвестно как выглядит. Может быть из макры распечатеть его в удобном виде можно?


VD>Ты можешь отлаживать сами макросы и смотреть на получаемый код прямо в Wath. Самый простой способ это сделать — воткнуть в код assert2(false); и нажать на Retry когда появится окно (во время компиляции).


VD>Кроме того у любого куста АСТ (PExpr, например) есть метод ToString(). С его помощью можно получить текст (сгенерированный) макроса. Его можно прямо в код куда-то засунуть, если надо.


VD>Кроме того при добавлении методов можно использовать не Define, а DefineWithSource (поищи его использование в коде компилятора и сниппетов). Это приводит к тому, что для добавленных таким образом методов будет сгенерирован исходный код по которому можно будет осуществлять отладку.


Ок, спасибо за хитрушки. Мне как раз текст не нужен, мне придется анализировать дерево, а для этого надо понять из чего оно состоит.
... << RSDN@Home 1.2.0 alpha 4 rev. 1468>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.