1
我想追加到列表的ADT内部如下:追加到列表内部ADT
data MyADT = myadt(list[str] s);
m = myadt([]);
m.s += "test";
这将导致一个错误:
|prompt:///|(0,3,<1,0>,<1,3>): Expected list[str], but got str
?[Advice](http://tutor.rascal-mpl.org/Errors/Static/UnexpectedType/UnexpectedType.html)
这似乎像它应该工作,因为这种工作:
x = [];
x += "test";
也许我在这里失去了一些东西?
谢谢!
只要输入'ms = ms +'test''也应该可以正常工作,很可能这是计算给定一个void容器的类型时的问题(尽管我很惊讶Rascal认为它是无效的,因为它有一个明确的类型声明)。 – 2015-03-30 20:53:11
谢谢!我已经来到了这个解决方法,并认为我尝试了第二个,但我想我没有。 – josh 2015-03-31 01:34:12