It's rather late in my LiveCode (Revolution) career to be asking this question, but here we are.

I happened to be looking at the Dictionary entry for 'combine', and was excited to find two variants of the command that I didn't now about. The dictionary lists three forms:

COMBINE arrayName {USING | BY | WITH} primaryDelimiter [AND secondaryDelimiter]
COMBINE arrayName {USING | BY | WITH} primaryDelimiter as SET
COMBINE arrayName {USING | BY | WITH} {row | column}

(I've capitalised the words which appear in a colour in the dictionary presumably as keywords.)

Well I knew the first form; I hadn't come across the other two (in fairness to me, the last form is apparently relatively new, the dictionary entry says that it was added in 2.8.1.)

If you use the as set form the combine command rebuilds the list using the 
delimiter passed; the values of the array are ignored.

I guess this is equivalent to "the keys" of the array, albeit with the ability to specify a delimiter other than return. I'd not come across

It's the third form, mysteriously described as the second form, that I find interesting:

If the second form of the combine command is used, the elements of the original 
array are considered to be either columns or rows, separated by the 
columnDelimiter or rowDelimiter property respectively.

Combining an array by row converts the array into a table with rows separated 
by the rowDelimiter. Each row in the resulting string is the contents of the 
corresponding key in the array.

Combining an array by column converts the array into a table with columns 
separated by the columnDelimiter . Each column of the resulting string is the 
contents of the corresponding key in the array.

But I can't see how to access it. "row" and "column" aren't keywords. If I use the syntax specified, quoting row or column, e.g.
        combine aTest using "column"

it simply treats this as the first form, with "column" as the primaryDelimiter (and why not). I tried guessing some alternatives
        combine aTest using return by "column"
        combine aTest by "column" using return

In both cases, no objection was raised to the statement, but the first item (return or "column") was again treated as the primaryDelimiter, the second part ignored.

Does anyone know what this syntax should be? Does it exist?

TIA,

Ben

_______________________________________________
use-livecode mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Reply via email to