1 ;"need to fload <ac.mud>init.mud in order to compile this"
3 <DEFINE GENERATE_PROCESSING_ORDERS (TR ;"transaction description"
5 "AUX" (NN <NTH .TR ,nnodes_t>)
8 #DECL ((TR) transaction_type_desc (PS) <LIST [REST FIX]>
9 (TEMP) <OR <LIST [REST FIX]> FALSE> (NN) FIX)
11 (<==? <LENGTH .PS> .NN> .PS)
19 <COND (<NOT <MEMBER .Y .PS>>
20 <MAPRET !<GENERATE_PROCESSING_ORDERS .TR (.Y !.PS)>>)
22 <NTH <NTH <NTH .TR ,conns_t> .X> ,rcn_c>>>
23 <COND (<NOT <EMPTY? .TEMP>> <MAPLEAVE .TEMP>)>>
26 <FUNCTION (X "AUX" (Y <NTH <NTH <NTH .TR ,conns_t> .X> ,pn_c>))
27 #DECL ((X) FIX (Y) <OR FIX FALSE>)
29 (<AND .Y <NOT <MEMBER .Y .PS>>>
30 <MAPLEAVE <GENERATE_PROCESSING_ORDERS .TR (.Y !.PS)>>)>>
32 (ELSE ;"look for unrestricted children nodes"
41 (<NOT <MEMBER .Y .PS>>
42 <MAPLEAVE <GENERATE_PROCESSING_ORDERS .TR (.Y !.PS)>>)>>
43 <NTH <NTH <NTH .TR ,conns_t> .X> ,ucn_c>>>
44 <COND (.TEMP <MAPLEAVE .TEMP>)>>
45 <LREVERSE <LIST !.PS>>>)>>