MCPcopy Index your code
hub / github.com/mozilla/source-map / toStringWithSourceMap

Method toStringWithSourceMap

lib/source-node.js:342–427  ·  view source on GitHub ↗

* Returns the string representation of this source node along with a source * map.

(aArgs)

Source from the content-addressed store, hash-verified

340 * map.
341 */
342 toStringWithSourceMap(aArgs) {
343 const generated = {
344 code: "",
345 line: 1,
346 column: 0,
347 };
348 const map = new SourceMapGenerator(aArgs);
349 let sourceMappingActive = false;
350 let lastOriginalSource = null;
351 let lastOriginalLine = null;
352 let lastOriginalColumn = null;
353 let lastOriginalName = null;
354 this.walk(function (chunk, original) {
355 generated.code += chunk;
356 if (
357 original.source !== null &&
358 original.line !== null &&
359 original.column !== null
360 ) {
361 if (
362 lastOriginalSource !== original.source ||
363 lastOriginalLine !== original.line ||
364 lastOriginalColumn !== original.column ||
365 lastOriginalName !== original.name
366 ) {
367 map.addMapping({
368 source: original.source,
369 original: {
370 line: original.line,
371 column: original.column,
372 },
373 generated: {
374 line: generated.line,
375 column: generated.column,
376 },
377 name: original.name,
378 });
379 }
380 lastOriginalSource = original.source;
381 lastOriginalLine = original.line;
382 lastOriginalColumn = original.column;
383 lastOriginalName = original.name;
384 sourceMappingActive = true;
385 } else if (sourceMappingActive) {
386 map.addMapping({
387 generated: {
388 line: generated.line,
389 column: generated.column,
390 },
391 });
392 lastOriginalSource = null;
393 sourceMappingActive = false;
394 }
395 for (let idx = 0, length = chunk.length; idx < length; idx++) {
396 if (chunk.charCodeAt(idx) === NEWLINE_CODE) {
397 generated.line++;
398 generated.column = 0;
399 // Mappings end at eol

Callers 2

Calls 4

walkMethod · 0.95
addMappingMethod · 0.95
walkSourceContentsMethod · 0.95
setSourceContentMethod · 0.95

Tested by

no test coverage detected