コードを生成しないCollectionできました。ただ、インターフェースへの代入処理が入るため
コードの生成量はあまり変わらないかもしれません。あんまり意味がないかもしれません。
listとかmapって思ったより、多用しないため。セルフホストに適用したら、メモリ枯渇しました。
RustにはenumへのCollectionもありますが、それを実装するかもしれません。
気が向けば。
#include <comelang.h>
int main(int argc, char** argv)
{
list<object: string>*% li = new list<object: string>();
li.add(s"AAA");
li.add(s"BBB");
li.add(s"CCC");
foreach(it, li) {
puts(it);
}
return 0;
}
こんな感じです。addなどのlistのコード生成はobjectインターフェースのみとなります。
ただ、li.add(s"AAA");objectインターフェースへの代入処理が入るため、実際はコード生成量は
あまり変わりません。意味ないですね。がくり。
ちょっと,anyへの代入にしてコード生成してみます。ちょっとその仕事今からやります。