Item (UnicodeNamedArraylist property)

From m204wiki
Revision as of 00:57, 20 October 2011 by Alex (talk | contribs) (→‎Usage notes)
Jump to navigation Jump to search

Value of named item (UnicodeNamedArraylist class)


Item is a ReadWrite property returns or sets the value of the item that has the specified subscript name in the UnicodeNamedArraylist.

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

Syntax

%currentItem = uniNal:Item( unicode) uniNal:Item( unicode) = newItem Throws ItemNotPresent

Syntax terms

%currentItem A variable of the same type as specified on the uniNal declaration to contain the value of the specified uniNal item.
uniNal A UnicodeNamedArraylist object.
unicode A Unicode string that serves as a subscript to identify a uniNal item.
newItem A variable or value of the same type as specified on the uniNal declaration to be assigned to the specified uniNal item.

Usage notes

  • The Item keyword is not required. For example, in the request in the UnicodeNamedArraylist class example, the following statement:

    %k('§Apr':u) = 'Leo'

    is equivalent to:

    %k:Item('§Apr':u) = 'Leo'

  • If the Item property is being set and there is already an item on the UnicodeNamedArraylist that has the specified name, that item is replaced. If the Item property is being set and there is no item on the UnicodeNamedArraylist that has the indicated name, the item is added.
  • If the Item property is being retrieved and there is no item on the UnicodeNamedArraylist that has the indicated 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 example in the UnicodeNamedArraylist class article, UnicodeNamedArraylist items are ordered alphabetically by their subscript names. Accordingly, the Item method takes a Unicode string as its argument.

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.