1 12/28/82 mvt_
2
3 The mvt_ subroutine provides for extremely efficient translation of
4 character strings using translations which are not known at compile
5 time.
6
7
8 Entry points in mvt_:
9 List is generated by the help command
10
11
12 :Entry: mvt_: 12/06/82 mvt_ entry
13
14
15 Syntax:
16 declare mvt_ entry ptr ptr fixed bin21 char512 aligned;
17 call mvt_ input_string_ptr output_string_ptr string_lth
18 translate_table;
19
20
21 Arguments:
22 input_string_ptr
23 is a pointer to the unaligned string to be translated. Input
24 output_string_ptr
25 is a pointer to the string where the results of the translation will
26 be placed. Input
27 string_lth
28 is the length of both the input string and the output string in
29 characters. Input
30 translate_table
31 is the translation table which defines the actual translation. See
32 mvt_$make_translation_table for a description of how to create this
33 table. Input
34
35
36 :Entry: make_translation_table: 12/06/82 mvt_$make_translation_table
37
38
39 Function: This entry point creates the translation table used by the
40 mvt_ subroutine given the second and third arguments which would be
41 supplied to the PL/I translate builtin function.
42
43
44 Syntax:
45 declare mvt_$make_translation_table entry char* char* char512
46 aligned;
47 call mvt_$make_translation_table translated_list untranslated_list
48 translate_table;
49
50
51 Arguments:
52 translated_list
53 is the second argument to the PL/I translate builtin and specifies
54 the result of translating any occurrence of the corresponding
55 characters in untranslated_list present in the input string of the
56 mvt_ entry described above. Input
57 untranslated_list
58 is the third argument to the PL/I translate builtin and specifies
59 the list of characters which will be translated if found in the
60 input string. Input
61 translate_table
62 is set to the translate table which defines the desired translation.
63 Output
64
65
66 Notes: The table constructed by this subroutine will cause any
67 occurence of the N'th character in untranslated_list present in the
68 input string of mvt_ to be converted into the N'th character in
69 translated_list. See the description of the PL/I translate builtin for
70 more information.
71
72 If the PL/I builtin would have been used with only two arguments, use
73 the value of the collate9 builtin for the untranslated_list argument.