====== RTP Series - RTP21=====
^Published By^Date^Version^Knowledge Level^Keywords^
|Sprezzatura Ltd|01 JUL 1989|1.15+|EXPERT|RTP21, MULTIVALUE, EVAL, COMP|
The routine used for doing %%***%%, %%///%% and other multivalue operations. These
appear to be around 28 operations catered for by this function, each
operation triggered by the passing of the appropriate code.
Unfortunately this is another RTP which cannot be accessed directly. The
only way to evaluate the functionality of this routine is to use EVAL. Even
this is of limited use as the information returned cannot be used, as it is
returned in a way that the calling program cannot access it. A System
Compiler is essential. The calling syntax for RTP21 is
CALL RTP21(Array1,Array2,Action)
where Array1 is the first multivalued array, Array2 is the second
multivalued array and action is a number between 1 and 29. To see the result
of using this try the following code
EVAL A = 1 : @VM : 2 : @VM : 3 ; B = 2 : @VM : 3 : @VM : 4 ; ACTION = 1 ; CALL RTP21(A,B,ACTION) ; PRINT A,B
Varying the Action code each time helps us to construct the following table
^Num^Description^
|1|%%+++%%|
|2|%%---%%|
|3|%%***%%|
|4|%%///%%|
|5|%%:::%%|
|6|%%===%%|
|7|%%###%%|
|8|%%<<<%%|
|9|%%>>>%%|
|10|%%<=<=<=%%|
|11|%%>=>=>=%%|
|12|MATCH MATCH MATCH|
|13|IF INDEX(A IN B) FOR EACH|
|14|A ENDS IN B FOR EACH|
|15|A BEGINS IN B FOR EACH|
|16-29|Similar to above but returns True/False array|
It would be useful were RevTech to make this routine callable normally, but
until then see the documentation on COMP in the next issue.
(Volume 1, Issue 3, Page 5)