2110 if op == 'minus': |
2109 if op == 'minus': |
2111 return optimize(('and', x[1], ('not', x[2])), small) |
2110 return optimize(('and', x[1], ('not', x[2])), small) |
2112 elif op == 'only': |
2111 elif op == 'only': |
2113 return optimize(('func', ('symbol', 'only'), |
2112 return optimize(('func', ('symbol', 'only'), |
2114 ('list', x[1], x[2])), small) |
2113 ('list', x[1], x[2])), small) |
|
2114 elif op == 'onlypost': |
|
2115 return optimize(('func', ('symbol', 'only'), x[1]), small) |
2115 elif op == 'dagrangepre': |
2116 elif op == 'dagrangepre': |
2116 return optimize(('func', ('symbol', 'ancestors'), x[1]), small) |
2117 return optimize(('func', ('symbol', 'ancestors'), x[1]), small) |
2117 elif op == 'dagrangepost': |
2118 elif op == 'dagrangepost': |
2118 return optimize(('func', ('symbol', 'descendants'), x[1]), small) |
2119 return optimize(('func', ('symbol', 'descendants'), x[1]), small) |
2119 elif op == 'rangepre': |
2120 elif op == 'rangepre': |