The user defined filter facility provides a mechanism whereby
filters written as DEC Text Processing Utility (DECTPU) programs are
automatically executed when tests are run. These filters are
referred to as user filters. The implementation enables users to
solve easily many filtering problems, often with a single-line
program, whilst allowing full access to the facilities of DECTPU to
solve more complex cases.
To implement a new filter, a file containing the required DECTPU
commands is created. There are a number of predefined patterns and a
global replace procedure provided which can be used to build the
commands. For example, the following command will replace device
names that precede a directory with the string "DEVICE":
global_replace( identifier + ':[' , 'DEVICE:[' )
The filter can be tested using the /USER_FILTER qualifier to the
FILTER command. For example:
FILTER/USER_FILTER=DEVICE.TPU TEST.DAT
See help on FILTER /USER_FILTER for more information.
Alternatively, filters can be developed using the TPU
pattern style feature of Language-Sensitive Editor.
To associate a user filter with a test, a logical variable starting
with the characters "DTM$UF_" is created. The value of the variable
is the file specification of the file containing the DECTPU
commands. For example:
CREATE VARIABLE /LOGICAL DTM$UF_DEVICE "DISK1:[TEST.FILTERS]DEVICE.TPU"
The variable is then associated with the test in the usual way, for
example:
MODIFY TEST /VARIABLE=DTM$UF_DEVICE
When the test is run, as part of a collection, the filter will be
applied.
Additional Information:
explode
extract