MoveFromId (Stringlist subroutine): Difference between revisions
m (1 revision) |
mNo edit summary |
||
(4 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
{{Template:Stringlist:MoveFromId subtitle}} | {{Template:Stringlist:MoveFromId subtitle}} | ||
This method moves data ( | This method moves data ([[$lists|$list]] items) from a $list to a <var>Stringlist</var>. <var>MoveFromId</var> is a subroutine that accepts one argument: the $list identifier of the $list from which data is to be moved. | ||
==Syntax== | ==Syntax== | ||
{{Template:Stringlist:MoveFromId syntax}} | {{Template:Stringlist:MoveFromId syntax}} | ||
===Syntax terms=== | ===Syntax terms=== | ||
<table class="syntaxTable"> | <table class="syntaxTable"> | ||
<tr><th>sl</th> | <tr><th>sl</th> | ||
<td>A <var>Stringlist</var> object.</td></tr> | <td>A <var>Stringlist</var> object.</td></tr> | ||
<tr><th>listId</th> | <tr><th>listId</th> | ||
<td>The | <td>The $list identifier of the $list from which data is to be moved.</td></tr> | ||
</table> | </table> | ||
==Usage notes== | ==Usage notes== | ||
<ul><li>All errors in <var>MoveFromId</var> result in request cancellation.<li>After <var>MovefromId</var> is invoked, the source | <ul> | ||
<li>All errors in <var>MoveFromId</var> result in request cancellation. | |||
<li>After <var>MovefromId</var> is invoked, the source $list will be emptied, although the $list identifier is still valid. | |||
<li><var>MoveFromId</var> discards any current contents of the method <var>Stringlist</var>. | |||
<li><var>MoveFromId</var> copies to the method <var>Stringlist</var> any image association that is set via <var>[[$ListImg]]</var>. | |||
<li><var>MoveFromid</var> simply moves the internal $list data pointers to the object <var>stringlist</var>. It does <b><i>not</i></b> actually perform any data movement; therefore, it is extremely efficient. | |||
<li><var>MoveFromid</var> is intended to facilitate migration to <var>stringlists</var> of existing applications that use $lists. | |||
<li> <var>stringlists</var> 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>Stringlists</var>. | |||
</ul> | |||
==Examples== | ==Examples== | ||
< | Suppose complex subroutine <code>Summarize</code> takes a $list identifier as its input parameter. Further suppose that the subroutine is rewritten to use a <var>Stringlist</var> rather than a $list. The following code illustrates how this can be accomplished: | ||
<p class="code">subroutine summarize(%listId is float) | <p class="code">subroutine summarize(%listId is float) | ||
Line 23: | Line 39: | ||
%list = new | %list = new | ||
%list:moveFromid(%listId) | %list:moveFromid(%listId) | ||
... | |||
%list:moveToid(%listId) | %list:moveToid(%listId) | ||
return | return | ||
</p> | </p> | ||
Of course, if the subroutine "forgets" to restore the input | Of course, if the subroutine "forgets" to restore the input $list contents with <var>MoveToId</var>, the input $list remains empty at the end of the subroutine. | ||
==See also== | ==See also== | ||
<ul><li><var>[[MoveToId (Stringlist subroutine)|MoveToId]]</var> | <ul> | ||
<li><var>[[MoveToId (Stringlist subroutine)|MoveToId]]</var> does the converse of <var>MoveToid</var> (moves <var>Stringlist</var> data into a $list). | |||
</ul> | |||
{{Template:Stringlist:MoveFromId footer}} | {{Template:Stringlist:MoveFromId footer}} |
Latest revision as of 16:44, 31 October 2012
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.
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 MovefromId is invoked, the source $list will be emptied, although the $list identifier is still valid.
- MoveFromId discards any current contents of the method Stringlist.
- MoveFromId copies to the method Stringlist any image association that is set via $ListImg.
- MoveFromid simply moves the internal $list data pointers 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.
- 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.
Examples
Suppose complex subroutine Summarize
takes a $list identifier as its input parameter. Further suppose that the subroutine is rewritten to use a Stringlist rather than a $list. 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.
See also
- MoveToId does the converse of MoveToid (moves Stringlist data into a $list).