You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
module.exports = class CovLine { constructor (line, startCol, lineStr) { this.line = line // note that startCol and endCol are absolute positions
// within a file, not relative to the line.
this.startCol = startCol
// the line length itself does not include the newline characters,
// these are however taken into account when enumerating absolute offset.
const matchedNewLineChar = lineStr.match(/\r?\n$/u) const newLineLength = matchedNewLineChar ? matchedNewLineChar[0].length : 0 this.endCol = startCol + lineStr.length - newLineLength
// we start with all lines having been executed, and work
// backwards zeroing out lines based on V8 output.
this.count = 1
// set by source.js during parsing, if /* c8 ignore next */ is found.
this.ignore = false }
toIstanbul () { return { start: { line: this.line, column: 0 }, end: { line: this.line, column: this.endCol - this.startCol } } } }
|