| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 | 
							- /*
 
- 	MIT License http://www.opensource.org/licenses/mit-license.php
 
- 	Author Tobias Koppers @sokra
 
- */
 
- "use strict";
 
- const CHAR_CODE_NEW_LINE = "\n".charCodeAt(0);
 
- /**
 
-  * @typedef {object} GeneratedSourceInfo
 
-  * @property {number=} generatedLine generated line
 
-  * @property {number=} generatedColumn generated column
 
-  * @property {string=} source source
 
-  */
 
- /**
 
-  * @param {string | undefined} source source
 
-  * @returns {GeneratedSourceInfo} source info
 
-  */
 
- const getGeneratedSourceInfo = (source) => {
 
- 	if (source === undefined) {
 
- 		return {};
 
- 	}
 
- 	const lastLineStart = source.lastIndexOf("\n");
 
- 	if (lastLineStart === -1) {
 
- 		return {
 
- 			generatedLine: 1,
 
- 			generatedColumn: source.length,
 
- 			source,
 
- 		};
 
- 	}
 
- 	let generatedLine = 2;
 
- 	for (let i = 0; i < lastLineStart; i++) {
 
- 		if (source.charCodeAt(i) === CHAR_CODE_NEW_LINE) generatedLine++;
 
- 	}
 
- 	return {
 
- 		generatedLine,
 
- 		generatedColumn: source.length - lastLineStart - 1,
 
- 		source,
 
- 	};
 
- };
 
- module.exports = getGeneratedSourceInfo;
 
 
  |