% % stack: [ [ . . . ] list-count ] % *vaxprest % % stack: empty % % use the current target Tree container % Task.@ *loadmark "Default#Targets" *treesafe % % cycle through all the trees % empty !builder Tree.Down { !\ % % stack: empty [ . . . ] % % is this tree selected? % @Default#Targets Tree.Marker "Selected" eq$ { % % tree is a subject for search, load the tree % *treetxlt *treesafe all\# - -1 _Values.Start { !\ % % unmark the node before analysis % "Default" _\ Tree.!Mark % % check for the search object to be part of node name % _Values.AllB dup not { pop _Values.SearchB _\\ Str.Found } if { % % this node is accepted, test the value name for acceptance % "vala " count - & &" " log)( _Values.AllC { % % all value names accepted % *vnaccept true } { % % cycle through value names to find the search object text % _Values.SearchC !search _\ @^*Values execstr countup 2 div { pop "valn " count - & &" " log)( % % stack: val-data val-name % dup "_" atleft { pop2 } { % % stack: val-data val-name % pop2nd _search within? { % % search text found % *vnaccept } { pop } ifelse } ifelse % % stack: % } for } ifelse } { } ifelse } for } if % % stack: empty [ . . . ] % } for 0 !counter _builder execstr % % stack: empty [ global-val . . . ] % *vaxpostd % % stack: builder % *vaxposte