Search code examples
objectscript

What is a "non multidimensional object property" exactly? (ref: doc of $LISTDATA)


The documentation of $LISTDATA says, with regards to the third argument, that:

The var parameter cannot be a non-multidimensional object property. Attempting to write a value to a non-multidimensional object property results in an error.

OK, so my understanding is as follows: if you declare, say:

Property foo as %String;

and then try to:

$listdata(whatever, whatever, ..foo)

then this is an error. However, if foo was declared as:

Property foo [ Multidimensional ];

then there wouldn't be an error.

Is that it, or is this more subtle? for instance, what if I declare:

Property foo as list of %String;

would that be multidimensional?


Solution

  • Multidimensional means that property has the characteristics of a multidimensional array.

    Property foo as list of %String; would throw an error