MoveFromId (Stringlist subroutine): Difference between revisions
m (1 revision) |
m (1 revision) |
||
Line 17: | Line 17: | ||
The following code illustrates how this can be accomplished: | The following code illustrates how this can be accomplished: | ||
< | <p class="code">subroutine summarize(%listId is float) | ||
subroutine summarize(%listId is float) | |||
%list is object stringList | %list is object stringList | ||
%list = new | %list = new | ||
Line 25: | Line 24: | ||
%list:moveToid(%listId) | %list:moveToid(%listId) | ||
return | return | ||
</ | </p> | ||
Of course, if the subroutine "forgets" to restore the input $list contents with MoveToId, the input $list remains empty at the end of the subroutine. <var>Stringlist</var>s should always be used in preference to $lists, so <var>MoveFromId</var> is provided only for the migration of existing $list applications to the use of <var>Stringlist</var>s. | Of course, if the subroutine "forgets" to restore the input $list contents with MoveToId, the input $list remains empty at the end of the subroutine. <var>Stringlist</var>s should always be used in preference to $lists, so <var>MoveFromId</var> is provided only for the migration of existing $list applications to the use of <var>Stringlist</var>s. |
Revision as of 15:47, 20 January 2011
Move data from $list to Stringlist (Stringlist class)
This method moves data ($list items) from a $list to a Stringlist. MoveFromId is a subroutine that accepts one argument: the $list identifier of the $list from which data is to be moved. For more information about $list identifiers, see the Sirius Functions Reference Manual.
Syntax
sl:MoveFromId( listId)
Syntax terms
sl | A Stringlist object. |
---|---|
listid | The $list identifier of the $list from which data is to be moved. |
Usage notes
- All errors in MoveFromId result in request cancellation.
- After the MovefromId method is invoked, the source $list is empty, though the $list identifier is still valid.
- MoveFromId discards the original contents of the method Stringlist.
- The MoveFromId method copies to the method Stringlist any image association that is set via $listimg.
- MoveFromid simply moves the pointers to the $list data to the object Stringlist. It does not actually perform any data movement; therefore, it is extremely efficient.
- MoveFromid is intended to facilitate migration to Stringlists of existing applications that use $lists. For example, suppose complex subroutine Summarize takes a $list identifier as its input parameter. Further suppose that the subroutine is rewritten to use Stringlists rather than $lists.
The following code illustrates how this can be accomplished:
subroutine summarize(%listId is float) %list is object stringList %list = new %list:moveFromid(%listId) ... %list:moveToid(%listId) return
Of course, if the subroutine "forgets" to restore the input $list contents with MoveToId, the input $list remains empty at the end of the subroutine. Stringlists should always be used in preference to $lists, so MoveFromId is provided only for the migration of existing $list applications to the use of Stringlists.