5.95 How to check if name is assigned a value?
For simple variable, use assigned
restart;
x:=10:
assigned(x)
true
assigned(y)
false
For a field in table do
restart;
A:=table(["x"=10,"y"=20]):
assigned(A["x"])
true
assigned(A["z"])
false
For field in Record, I do not know how yet, other than using try catch, as assigned does
not seem to work for Record fields.
restart;
A:=Record('x'=10,'y'=20);
try
assigned(A:-x)
catch:
print("no such field in record")
end try;
true
try
assigned(A:-z)
catch:
print("no such field in record")
end try;
"no such field in record"