Difference between revisions of "ListStridedMove"

From Second Life Wiki
Jump to navigation Jump to search
m
m
Line 13: Line 13:
<lsl>list ListStridedMove(list myList, integer start, integer end, integer stride, integer target) {
<lsl>list ListStridedMove(list myList, integer start, integer end, integer stride, integer target) {
     if(stride <= 0) stride = 1;
     if(stride <= 0) stride = 1;
     list item = llList2List(myList, start *= stride, end = (((end + 1) * stride) - 1));
     list item = llList2List(myList, start *= stride, end = ((stride * (end + 1)) - 1));
     return llListInsertList((myList = []) + llDeleteSubList(myList, start, end), item, destination * stride);
     return llListInsertList(llDeleteSubList(myList, start, end), myList = item, destination * stride);
}</lsl>
}</lsl>



Revision as of 17:28, 14 July 2008

Summary

Function: list ListStridedMove( list myList, integer start, integer end, integer stride, integer target );

Moves a stride from one position to another position.
Returns a list that contains the elements of myList but with the strides in the range of start to end moved to the stride position target.

• list myList
• integer start
• integer end
• integer stride
• integer target

<lsl>list ListStridedMove(list myList, integer start, integer end, integer stride, integer target) {

   if(stride <= 0) stride = 1;
   list item = llList2List(myList, start *= stride, end = ((stride * (end + 1)) - 1));
   return llListInsertList(llDeleteSubList(myList, start, end), myList = item, destination * stride);

}</lsl>

See also: Strided Lists

Examples