CharacterMap class: Difference between revisions

From m204wiki
Jump to navigation Jump to search
mNo edit summary
mNo edit summary
Line 5: Line 5:
The output table may be supplemented with instances of a pad character
The output table may be supplemented with instances of a pad character
to ensure a one-to-one mapping with the input table characters.
to ensure a one-to-one mapping with the input table characters.
The [[List of CharacterMap methods|"List of CharacterMap methods"]] lists all the methods in this class.
   
   
<var>CharacterMap</var> includes a constructor, copy methods, and an update method
<var>CharacterMap</var> includes a constructor, copy methods, and an update method
for modifying the map.
for modifying the map. The [[List of CharacterMap methods|"List of CharacterMap methods"]] shows all the class methods.


This class is new as of version 7.3 of the <var class="product">Sirius Mods</var>.
The <var>CharacterMap</var> class is new as of version 7.3 of the <var class="product">Sirius Mods</var>.


===Example===
===Example===

Revision as of 00:14, 1 December 2011

A CharacterMap object contains a mapping of characters to characters. Each character in an In string (the “input table”) is associated with, or mapped to, an individual character from an Out string (the “output table”). The output table may be supplemented with instances of a pad character to ensure a one-to-one mapping with the input table characters.

CharacterMap includes a constructor, copy methods, and an update method for modifying the map. The "List of CharacterMap methods" shows all the class methods.

The CharacterMap class is new as of version 7.3 of the Sirius Mods.

Example

Most of these methods are shown in the following example, which features the intrinsic String function, Translate. In the example, a new CharacterMap is the argument for the Translate method; then that map is copied and modified, and the modified map is used in a second Translate call:

begin %map is object characterMap %map2 is object characterMap %ls is longstring %map = New(in='x-', out='!c') %ls = 'xu--exx' printtext {~} = '{%ls:translate(%map)}' %map2 = %map:Copy %map2:Update(in='x',out='s') printtext {~} = '{%ls:translate(%map2)}' end

The result is:

%ls:translate(%map) = '!ucce!!' %ls:translate(%map2) = 'success'