% % stack: [ [ . . . ] list-count ] % *vaxprest % % stack: empty % % clear the History tree for use with searched target Trees % Task.@ "Trees" Tree.ReRoot *treepret % % cycle through all the trees % Tree.Down { dup !target !\ % % stack: empty [ . . . ] % *treefilt { % % stack: empty [ . . . ] tree-hier % _Values.All { % % all trees are searched for the search object within the node names % true } { % % search only the trees specified by the name text % in the manner the search was originally invoked % _Values.SearchA found? } ifelse % % stack: empty [ . . . ] tree-hier to-be-searched % { _Values.AllB { % % all nodes are included in the search % % all trees that contain the tree name search string are to % be listed % dup &"\0/" second "#" Str.RevRight & &"|||" exch dup "#" "\" replall % % stack: empty [ . . . . ] tree-global cur-tree tree-hier % "_Fname" \_ !fname *trxlistf % % stack: empty [ . . . . ] tree-global cur-tree % pop } { % % tree is a subject for search, load the tree % *treesafe Tree.Last -1 _Values.Start { !\ % % check for the search object to be part of node name % _Values.SearchB _\\ Str.Found % % stack: empty [ . . . ] found % { *trxliste } if } for } ifelse } { % % this tree not subject to search % pop } ifelse } if % % stack: empty [ . . . ] % } for Task.@ *expander @Default#Targets ._MepSpec "TargTree " log)( Tree.Save pop % % stack: empty [ global-val . . . ] % *vaxpostd % % stack: builder % *vaxposte Task.@ "_Trees.tlt" ofbin Tree.Save pop