(chunk, n)
| 2930 | }; |
| 2931 | |
| 2932 | function getLineAt(chunk, n) { |
| 2933 | while (!chunk.lines) { |
| 2934 | for (var i = 0;; ++i) { |
| 2935 | var child = chunk.children[i], sz = child.chunkSize(); |
| 2936 | if (n < sz) { chunk = child; break; } |
| 2937 | n -= sz; |
| 2938 | } |
| 2939 | } |
| 2940 | return chunk.lines[n]; |
| 2941 | } |
| 2942 | function lineNo(line) { |
| 2943 | if (line.parent == null) return null; |
| 2944 | var cur = line.parent, no = indexOf(cur.lines, line); |