(e ast.NavigableExpr)
| 594 | } |
| 595 | |
| 596 | func comprehensionSubExprIDs(e ast.NavigableExpr) []int64 { |
| 597 | compre := e.AsComprehension() |
| 598 | // Almost the same as e.Children(), but skips the iteration range |
| 599 | return enumerateExprIDs( |
| 600 | compre.AccuInit().(ast.NavigableExpr), |
| 601 | compre.LoopCondition().(ast.NavigableExpr), |
| 602 | compre.LoopStep().(ast.NavigableExpr), |
| 603 | compre.Result().(ast.NavigableExpr), |
| 604 | ) |
| 605 | } |
| 606 | |
| 607 | func enumerateExprIDs(exprs ...ast.NavigableExpr) []int64 { |
| 608 | ids := make([]int64, 0, len(exprs)) |
no test coverage detected