0

たとえば、ループでインスタンスを定義するマクロ (計算されていない) を作成しようとしています。

define <def_struct'statement> "def_struct <str_name'name> <number'num> to <other'name>" as computed {

         result.add(appendf("extend %s { ", <other'name> ) );
                 for i from 0 to <number'num> do {
                    result.add(appendf("%s_%d : %s;", <str_name'name> ,i,<str_name'name> ));
                 };
          result.add("};"); }

計算されたマクロではないマクロで同じことを行うことは可能ですか??

おそらく構文に問題がありますが、アイデアを見てください..

4

1 に答える 1

0

あなたcomputed asの例では、同じクラスのインスタンスの束を作成しています。構造体のリストをインスタンス化してみませんか?

myStructs : list of MyStruct_s;

必要に応じて、次のようなインデックスに基づいてリスト内の各アイテムを制約できます。

keep for each (s) using index (i) in myStructs {
    i==0 => s.fooBar == BAZ;
    s.name == appendf("this is struct %d",i);
};
于 2011-06-24T13:25:41.383 に答える