CharacterMap class: Difference between revisions
mNo edit summary |
m (→Example) |
||
Line 16: | Line 16: | ||
then that map is copied and modified, and the modified map is used in a | then that map is copied and modified, and the modified map is used in a | ||
second Translate call: | second Translate call: | ||
begin | begin | ||
%map is object characterMap | %map is object characterMap | ||
Line 24: | Line 24: | ||
%map = New(in='x-', out='!c') | %map = New(in='x-', out='!c') | ||
%ls = 'xu--exx' | %ls = 'xu--exx' | ||
printtext {~} = '{%ls:translate(%map)}' | [[Targeted Text statements|printtext]] {~} = '{%ls:translate(%map)}' | ||
%map2 = %map:Copy | %map2 = %map:Copy | ||
Line 31: | Line 31: | ||
end | end | ||
The result is: | The result is: |
Revision as of 01:17, 12 December 2010
A CharacterMap class 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.
The methods in this class are listed in Category:CharacterMap methods.
CharacterMap includes a constructor, copy methods, and an update method for modifying the map.
Example
Most of these methods are shown in the following example, which features the intrinsic String Translate function. 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'
This class is new as of version 7.3 of the Sirius Mods.