| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- "use strict";
-
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.default = parse;
-
- var _Document = _interopRequireDefault(require("./Document"));
-
- var _ParseContext = _interopRequireDefault(require("./ParseContext"));
-
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-
- // Published as 'yaml/parse-cst'
- function parse(src) {
- const cr = [];
-
- if (src.indexOf('\r') !== -1) {
- src = src.replace(/\r\n?/g, (match, offset) => {
- if (match.length > 1) cr.push(offset);
- return '\n';
- });
- }
-
- const documents = [];
- let offset = 0;
-
- do {
- const doc = new _Document.default();
- const context = new _ParseContext.default({
- src
- });
- offset = doc.parse(context, offset);
- documents.push(doc);
- } while (offset < src.length);
-
- documents.setOrigRanges = () => {
- if (cr.length === 0) return false;
-
- for (let i = 1; i < cr.length; ++i) cr[i] -= i;
-
- let crOffset = 0;
-
- for (let i = 0; i < documents.length; ++i) {
- crOffset = documents[i].setOrigRanges(cr, crOffset);
- }
-
- cr.splice(0, cr.length);
- return true;
- };
-
- documents.toString = () => documents.join('...\n');
-
- return documents;
- }
|