Метапост суффикс к строке

Метапост суффикс к строке

Есть ли способ конвертироватьсуффикскнить? Конкретнее, мне нужно сделать что-то вроде этого:

def myMacro (suffix a, b) =
    something.a = fOne(a);
    something.b = fOne(b);
    something.scantokens("somethingelse"&**suffixtostring**(a)&**suffixtostring**(b)) = fTwo(a,b);
enddef;

решение1

Попробуйте что-то вроде этого:

def your_macro(suffix a, b) = 
  something.a = 42;
  something.b = 64;
  something.scantokens("prefix" & str a & str b & "suffix") = 94;
enddef;

your_macro(p,q);

show something.prefixpqsuffix;
% shows 94

end.

Если вы хотите присвоить некоторое значение нечислового типа, вам somethingследует объявить его соответствующим образом, прежде чем пытаться присвоить ему. Например, pair something[];или string something[];. Но будьте осторожны, если вы это сделаете, суффиксы должны быть допустимымичисловойзначения, поскольку коллективный индекс, объявленный с помощью, []может быть только числовым.

Вам также, возможно, стоит подумать об области действия somethingпеременных.

Связанный контент