polserver/testsuite/escript/method/setmember.src

65 lines
934 B
Text
Raw Permalink Normal View History

// used member name to test ins_set_member_id_consume
var d:=dictionary{};
var s:=struct{resist_fire_mod};
var i:=4;
d.resist_fire_mod:=0;
s.resist_fire_mod:=0;
d.resist_fire_mod+=i;
s.resist_fire_mod+=i;
i-=2;
print(d);
print(s);
print(i);
s.resist_fire_mod-=1;
d.resist_fire_mod-=1;
print(d);
print(s);
s.resist_fire_mod*=i;
d.resist_fire_mod*=i;
print(d);
print(s);
s.resist_fire_mod%=4;
d.resist_fire_mod%=4;
print(d);
print(s);
// same test with diff member name
d:=dictionary{};
s:=struct{blubb};
i:=4;
d.blubb:=0;
s.blubb:=0;
d.blubb+=i;
s.blubb+=i;
i-=2;
print(d);
print(s);
print(i);
s.blubb-=1;
d.blubb-=1;
print(d);
print(s);
s.blubb*=i;
d.blubb*=i;
print(d);
print(s);
s.blubb%=4;
d.blubb%=4;
print(d);
print(s);
//should not work
d:=dictionary{};
s:=struct{blubb};
d.blubb+=1;
s.blubb+=1;
print(s);
print(d);
d:=dictionary{};
s:=struct{resist_fire_mod};
d.resist_fire_mod+=1;
s.resist_fire_mod+=1;
print(s);
print(d);