Difference between revisions of "ListStridedMove"

From Second Life Wiki
Jump to navigation Jump to search
(it had nothing to do with strides.)
m (<lsl> tag to <source>)
 
(7 intermediate revisions by 3 users not shown)
Line 8: Line 8:
|p5_type=integer|p5_name=target
|p5_type=integer|p5_name=target
|return_type=list
|return_type=list
|return_text=that is myList with the strides in the range of '''start''' to '''end''' moved to the stride position '''target'''.
|return_text=that contains the elements of '''myList''' but with the strides in the range of '''start''' to '''end''' moved to the stride position '''target'''.
|func_desc=Moves a stride from one position to another position.
|func_desc=Moves a stride from one position to another position.
|func_footnote=
|func_footnote=
<lsl>list ListStridedMove(list myList, integer start, integer end, integer stride, integer target) {
<source lang="lsl2">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 *= stride);
     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, target * stride);
}</lsl>
}</source>


See also: [[List#Strided_lists|Strided Lists]]
See also: [[List#Strided_lists|Strided Lists]]
Line 25: Line 25:
|also_articles
|also_articles
|notes
|notes
|cat1=Example
|cat1=Examples
|cat2
|cat2=User-Defined Functions
|cat3
|cat3
|cat4
|cat4
}}
}}

Latest revision as of 15:21, 22 January 2015

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

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, target * stride);
}

See also: Strided Lists

Examples