Item (NamedArraylist property): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (match syntax table to diagram, lots of tags, some edits)
mNo edit summary
 
(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Template:NamedArraylist:Item subtitle}}
{{Template:NamedArraylist:Item subtitle}}
 
<var>Item</var> is a ReadWrite property returns or sets the value of the item that has the given name in the <var>NamedArraylist</var>.
<!-- This is very close to the same method's page for these classes:
 
      FloatNamedArraylist
      UnicodeNamedArraylist
    Many changes should be reflected to all three method's pages -->
<var>Item</var> is a ReadWrite property which returns or sets the value of the item that has the given name in the <var>NamedArraylist</var>.
For additional comments about the <var>Item</var> method in collections, see [[Collections#Coding considerations for collections|"Coding considerations for collections"]].
For additional comments about the <var>Item</var> method in collections, see [[Collections#Coding considerations for collections|"Coding considerations for collections"]].
 
==Syntax==
==Syntax==
{{Template:NamedArraylist:Item syntax}}
{{Template:NamedArraylist:Item syntax}}
===Syntax terms===
===Syntax terms===
<!-- This is very close to the same method's page for these classes:
      FloatNamedArraylist
      UnicodeNamedArraylist
    Many changes should be reflected to all three method's pages -->
<table class="syntaxTable">
<table class="syntaxTable">
<tr><th>%currentItem</th>
<tr><th>%currentItem</th>
Line 16: Line 27:
<td>A string that serves as a subscript to identify a <var class="term">nal</var> item.</td></tr>
<td>A string that serves as a subscript to identify a <var class="term">nal</var> item.</td></tr>
<tr><th>newItem</th>
<tr><th>newItem</th>
<td>A variable or value of the same type as specified on the <var class="term">nal</var> declaration to be assigned to the specified <var class="term">nal</var> item. </td></tr>
<td>A value of the same type as specified on the <var class="term">nal</var> declaration to be assigned to the specified <var class="term">nal</var> item. </td></tr>
</table>
</table>
 
==Usage notes==
==Usage notes==
<!-- This is very close to the same method's page for these classes:
      FloatNamedArraylist
      UnicodeNamedArraylist
    Many changes should be reflected to all three method's pages -->
<ul>
<ul>
<li>If the <var>Item</var> property is being set and there is already an item on the <var>NamedArraylist</var> that has the specified name, that item is replaced.  If the <var>Item</var> property is being set and there is no item on the <var>NamedArraylist</var> that has the indicated name, the item is added. If the <var>Item</var> property is being retrieved and there is no item on the <var>NamedArraylist</var> that has the indicated name, the result is one of the following actions:
<li>The <var>Item</var> keyword is not required.  For example, in the first of the [[NamedArraylist class#Examples|"Examples"]] on the <var>NamedArraylist</var> class page, the following statement:
<p class="code">%alist('Idle') = 'Eric'</p>
is equivalent to:
<p class="code">%alist:Item('Idle') = 'Eric'
</p>
<li>If the <var>Item</var> property is being set and there is already an item on the <var>NamedArraylist</var> that has the specified name, that item is replaced.  If the <var>Item</var> property is being set and there is no item on the <var>NamedArraylist</var> that has the indicated name, the item is added.
<li>If the <var>Item</var> property is being retrieved and there is no item on the <var>NamedArraylist</var> that has the indicat ed name, the result is one of the following actions:
<ul>
<ul>
<li>The request is cancelled if the <var>[[UseDefault (NamedArraylist property)|UseDefault]]</var> property value is <code>False</code>.
<li>If the <var>[[UseDefault (NamedArraylist property)|UseDefault]]</var> property value is <code>False</code>:
<ul>
<li>Under <var>Sirius Mods</var> version 8.0 and later an <var>[[ItemNotPresent class|ItemNotPresent exception]]</var> is thrown.
<li>Under <var>Sirius Mods</var> version 7.9 and earlier the request is cancelled.
</ul>
<li>The <var>[[Default (NamedArraylist property)|Default]]</var> value is returned if the <var>UseDefault</var> property is <code>True</code>.
<li>The <var>[[Default (NamedArraylist property)|Default]]</var> value is returned if the <var>UseDefault</var> property is <code>True</code>.
</ul>
</ul>
<li>The <code>Item</code> keyword is not required.  For example, in the request at the start of the <var>[[NamedArraylist class]]</var>, <code>%alist('Idle') = 'Eric'</code>, for instance, is equivalent to:
Regardless of the value of <var>UseDefault</var>, the presence of the item with the indicated name can be checked using the <var>[[Number (NamedArraylist function)|Number]]</var> function, for example:
<p class="code">%alist:Item('Idle') = 'Eric'
<p class="code">%num = %myLis:number(%key)
if %num then %name = %myLis:[[ItemByNumber (NamedArraylist property)|itemByNumber]](%num)
...
</p>
</p>
<li>As shown in the example at the start of the [[NamedArraylist class]], <var>NamedArraylist</var> items are ordered alphabetically by their names. Accordingly, the <var>Item</var> method takes a name argument <var class="term">string</var>.
<li>As shown in the first of the <var>NamedArraylist</var> [[NamedArraylist class#Examples|"Examples"]],
<var>NamedArraylist</var> items are ordered alphabetically by their names.
</ul>
</ul>
 
==See also==
==See also==
<ul><li>The <var>[[ItemByNumber_(GenericNamedArraylist_property)|ItemByNumber]]</var> method, lets you retrieve or set an item using its item number.
<!-- This is very close to the same method's page for these classes:
      FloatNamedArraylist
      UnicodeNamedArraylist
    Many changes should be reflected to all three method's pages -->
<ul><li>The <var>[[ItemByNumber_(GenericNamedArraylist_property)|ItemByNumber]]</var> property lets you retrieve or set an item using the item's ordinal number.
<li>The <var>[[NameByNumber (NamedArraylist function)|NameByNumber]]</var> function lets you retrieve an item's name using the item's ordinal number.
<li>The <var>[[Number (NamedArraylist function)|Number]]</var> function lets you retrieve an item's ordinal number using the item's name; it can be useful for determining whether an item exists for a specified name.
</ul>
</ul>
{{Template:NamedArraylist:Item footer}}
{{Template:NamedArraylist:Item footer}}

Latest revision as of 16:41, 5 August 2012

Value of named item (NamedArraylist class)


Item is a ReadWrite property which returns or sets the value of the item that has the given name in the NamedArraylist.

For additional comments about the Item method in collections, see "Coding considerations for collections".

Syntax

%currentItem = nal:Item( string) nal:Item( string) = newItem Throws ItemNotPresent

Syntax terms

%currentItem A variable of the same type as specified on the nal declaration to contain the value of the specified nal item.
nal A NamedArraylist object.
string A string that serves as a subscript to identify a nal item.
newItem A value of the same type as specified on the nal declaration to be assigned to the specified nal item.

Usage notes

  • The Item keyword is not required. For example, in the first of the "Examples" on the NamedArraylist class page, the following statement:

    %alist('Idle') = 'Eric'

    is equivalent to:

    %alist:Item('Idle') = 'Eric'

  • If the Item property is being set and there is already an item on the NamedArraylist that has the specified name, that item is replaced. If the Item property is being set and there is no item on the NamedArraylist that has the indicated name, the item is added.
  • If the Item property is being retrieved and there is no item on the NamedArraylist that has the indicat ed name, the result is one of the following actions:
    • If the UseDefault property value is False:
      • Under Sirius Mods version 8.0 and later an ItemNotPresent exception is thrown.
      • Under Sirius Mods version 7.9 and earlier the request is cancelled.
    • The Default value is returned if the UseDefault property is True.

    Regardless of the value of UseDefault, the presence of the item with the indicated name can be checked using the Number function, for example:

    %num = %myLis:number(%key) if %num then %name = %myLis:itemByNumber(%num) ...

  • As shown in the first of the NamedArraylist "Examples", NamedArraylist items are ordered alphabetically by their names.

See also

  • The ItemByNumber property lets you retrieve or set an item using the item's ordinal number.
  • The NameByNumber function lets you retrieve an item's name using the item's ordinal number.
  • The Number function lets you retrieve an item's ordinal number using the item's name; it can be useful for determining whether an item exists for a specified name.