(doc, line, span)
| 4283 | } |
| 4284 | } |
| 4285 | function lineIsHiddenInner(doc, line, span) { |
| 4286 | if (span.to == null) { |
| 4287 | var end = span.marker.find().to, endLine = getLine(doc, end.line); |
| 4288 | return lineIsHiddenInner(doc, endLine, getMarkedSpanFor(endLine.markedSpans, span.marker)); |
| 4289 | } |
| 4290 | if (span.marker.inclusiveRight && span.to == line.text.length) |
| 4291 | return true; |
| 4292 | for (var sp, i = 0; i < line.markedSpans.length; ++i) { |
| 4293 | sp = line.markedSpans[i]; |
| 4294 | if (sp.marker.collapsed && !sp.marker.replacedWith && sp.from == span.to && |
| 4295 | (sp.to == null || sp.to != span.from) && |
| 4296 | (sp.marker.inclusiveLeft || span.marker.inclusiveRight) && |
| 4297 | lineIsHiddenInner(doc, line, sp)) return true; |
| 4298 | } |
| 4299 | } |
| 4300 | |
| 4301 | function detachMarkedSpans(line) { |
| 4302 | var spans = line.markedSpans; |
no test coverage detected