Есть ли известные способы создавать define внутри defin-a:
define A(t1,t2) = {
__define private B(a) = C(t1,t2,a)
}
define C(t1,t2,a)...
В идеале
define A(Z,t1,t2) = {
__define private Z(a) = C(t1,t2,a)
}
define C(t1,t2,a)...
Или хотя бы запускать textmacro внутри textmacro:
/! textmacro D takes N, T1
__define private $N$_push($T1$,q)
__...
//! runtextmacro F()
/! endtextmacro
/! textmacro F
__define private inc(i) = def($N$,i)
/! endtextmacro
Чтобы удобно было декорировать функции, спасибо

Принятый ответ

Vlod, ну я же сказал, что так нельзя, вопрос решён.
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
28
5 лет назад
0
Нет, так нельзя.
К тому же, это усложняет читаемость кода.
2
26
5 лет назад
2
а зачем
0
17
5 лет назад
0
Hate, что зачем, зачем я сюда пишу или что
если вопрос в том, зачем декорировать, то это увеличивает прозрачность кода оставляя функционал;
если вопрос в том, зачем делать это дефайнами, то, во-первых, это нанооптимизация, без 300 вызовов функций, принципиально в циклах на периоде, во-вторых, можно передавать контекстные переменные, типа название класса и т.п.
Давайте вы сначала поможете ответить на этот вопрос, а потом спрашивайте, что угодно) я в вас верю)
0
28
5 лет назад
Отредактирован PT153
0
Vlod, ну я же сказал, что так нельзя, вопрос решён.
Принятый ответ
0
26
5 лет назад
0
Vlod:
Hate, что зачем, зачем я сюда пишу или что
если вопрос в том, зачем декорировать, то это увеличивает прозрачность кода оставляя функционал;
если вопрос в том, зачем делать это дефайнами, то, во-первых, это нанооптимизация, без 300 вызовов функций, принципиально в циклах на периоде, во-вторых, можно передавать контекстные переменные, типа название класса и т.п.
Давайте вы сначала поможете ответить на этот вопрос, а потом спрашивайте, что угодно) я в вас верю)
видимо вы очень плохо разбираетесь что такое на самом деле дефайн и текстмакро
0
17
5 лет назад
0
Если вы разбираетесь в том, что такое define и textmacro лучше, чем даже тематические статьи на xgm и прочие мануалы, тогда мы с удовольствием выслушаем ваше мнение, Hate
Чтобы оставить комментарий, пожалуйста, войдите на сайт.