Documentation is laconic
Append(aa as Object)
Append an AssociativeArray to this one.
It is unclear what happens if the same keys are present in both dictionaries? E.g.
a={k:"a"} and
b={k:"b"}, after
a.append(b), should that be:
a) error during update
b) a.k = "a" (a prevails)
c) a.k = "b" (b prevails)
d) behavior undefined (can change in the future)
I tested and current behavior seems to be (c), as if a loop over b has been ran, doing a.AddReplace(). Roku*, can you state if this will be the behavior to rely on and document it?
PS. method probably should have been named "update()" since this implies new values win, compare to
python'sPPS. there is a bug in ".append()" in that if one passes non-roAssociativeArray argument, nothing happens (not even an error). That does not sound meaningful by design. Currently by the doc it is "Append(aa as Object)" but i can feed it number, string, bool, function... with no apparent effect. So seems to be more of "dynamic" type