Previous Index Next

BridgePlus.framework, SMSForder Class Methods

Category

List manipulation methods

Method

arrayByMovingItemAt:toIndex:inArray:error:

Summary

Does what it says. Indexes are zero-based.

Signature

+ (NSArray *)arrayByMovingItemAt:(NSInteger)fromIndex toIndex:(NSInteger)toIndex inArray:(NSArray *)listOrArray error:(NSError *__autoreleasing *)outError

Parameters

fromIndex = zero-based index of item to move

toIndex = proposed new zero-based index

listOrArray = the list or array

outError = missing value or reference

Result

An array

Availability

Version 1.0.0

Notes

If you set outError to reference, the result will be a list of two items. If there is no error, the first item will be the result of the method and the second will be missing value. If there is an error, the first item will be missing value and the second item with be an NSError.

Sample

use scripting additions

use framework "Foundation"

use script "BridgePlus"

load framework


set listOrArray to {1.1, 2, 3, 4, 5, 6}

set theResult to current application's SMSForder's arrayByMovingItemAt:0 toIndex:3 inArray:listOrArray |error|:(missing value)

ASify from theResult

--> {2, 3, 4, 1.1, 5, 6}

theResult as list -- 10.11 only

--> {2, 3, 4, 1.1, 5, 6}

theResult as list -- 10.9 and 10.10

--> {2, 3, 4, 1.100000023842, 5, 6}


set theResult to current application's SMSForder's arrayByMovingItemAt:5 toIndex:0 inArray:listOrArray |error|:(missing value)

ASify from theResult

--> {6, 1.1, 2, 3, 4, 5}

theResult as list -- 10.11 only

--> {6, 1.1, 2, 3, 4, 5}

theResult as list -- 10.9 and 10.10

--> {6, 1.100000023842, 2, 3, 4, 5}


set {theResult, theError} to current application's SMSForder's arrayByMovingItemAt:3 toIndex:7 inArray:listOrArray |error|:(reference)

if theResult = missing value then error (theError's localizedDescription() as text)

--> error number -2700  Index is out of range.


Click here to open script in a script editor