1 01/30/84 mlr_
2
3
4 Entry points in mlr_:
5 List is generated by the help command
6
7
8 :Entry: mlr_: 01/30/84 mlr_
9
10 Function: moves a character string by copying the characters from left
11 to right.
12
13
14 Syntax:
15 declare mlr_ entry ptr fixed bin21 ptr fixed bin21;
16 call mlr_ input_ptr input_lth output_ptr output_lth;
17
18
19 Arguments:
20 input_ptr
21 is a pointer to the input character string. Input
22 input_lth
23 is the length of the input string in characters. Input
24 output_ptr
25 is a pointer to the output character string. Input
26 output_lth
27 is the length of the output string in characters. Input
28
29
30 Notes: If the output string is shorter than the input string, only the
31 first output_lth characters of the input string are moved. If the
32 output string is longer than the input string, the output string is
33 padded on the right with blanks.
34
35
36 The following call to mlr_ --
37
38 call mlr_ addcharno addr text start+N lth
39 addcharno addr text start lth;
40
41 where N is a positive number is equivalent to the following PL/I loop--
42
43 do i = 1 to lth;
44 substr text start+i-1 1 = substr text start+N+i-1 1;
45 end;
46
47 which is also equivalent to the PL/I statement --
48
49 substr text start lth = substr text start+N lth;
50
51
52 Due to the nature of the Multics hardware, if the input and output
53 strings overlap and the output string is to the right of the input
54 string ie: N above were a negative number, the results of the call
55 to mlr_ will be different from the results of the above PL/I loop.