ListXneqY
Jump to navigation
Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Function: integer ListXneqY(list lx, list ly);
Answers the question: is list X different from list Y?
Returns the number 1 if true, 0 if false
Note: requires also the function ListXnotY .
The opposite function is ListXequY .
See also: Lists
integer ListXneqY(list lx, list ly)
{
if(lx == ly)
return !(ListXnotY(lx,ly) == []);
return TRUE;
}
Example:
list l1 = ["a","b","c","d", 1,2];
list l2 = ["a",1,"b",2,"c",3,"d"];
integer ListXneqY(list lx, list ly)
{
if(lx == ly)
return !(ListXnotY(lx,ly) == []);
return FALSE;
}
list ListXnotY(list lx, list ly)
{// return elements in X list that are not in Y list
list lz;
integer n = llGetListLength(lx);
while(n--)
if ( !~llListFindList(ly,llList2List(lx,n,n)) )
lz += llList2List(lx,n,n);
return lz;
}
default{
state_entry() {
llSay(0, "Are we different lists? " + (string)ListXneqY(l1,l2));
//will say in this example: 1 , meaning yes.
}
}
Posted with the kind permission of Very Keynes, who originated this script June 2007 in the SL scripters forum http://forums-archive.secondlife.com/54/e4/194138/1.html