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.
|
|
'use strict';
var parseCst = require('./parse-cst.js'); var Document$1 = require('./Document-9b4560a1.js'); var Schema = require('./Schema-88e323a7.js'); var PlainValue = require('./PlainValue-ec8e588e.js'); var warnings = require('./warnings-1000a372.js'); require('./resolveSeq-d03cb037.js');
function createNode(value, wrapScalars = true, tag) { if (tag === undefined && typeof wrapScalars === 'string') { tag = wrapScalars; wrapScalars = true; }
const options = Object.assign({}, Document$1.Document.defaults[Document$1.defaultOptions.version], Document$1.defaultOptions); const schema = new Schema.Schema(options); return schema.createNode(value, wrapScalars, tag); }
class Document extends Document$1.Document { constructor(options) { super(Object.assign({}, Document$1.defaultOptions, options)); }
}
function parseAllDocuments(src, options) { const stream = []; let prev;
for (const cstDoc of parseCst.parse(src)) { const doc = new Document(options); doc.parse(cstDoc, prev); stream.push(doc); prev = doc; }
return stream; }
function parseDocument(src, options) { const cst = parseCst.parse(src); const doc = new Document(options).parse(cst[0]);
if (cst.length > 1) { const errMsg = 'Source contains multiple documents; please use YAML.parseAllDocuments()'; doc.errors.unshift(new PlainValue.YAMLSemanticError(cst[1], errMsg)); }
return doc; }
function parse(src, options) { const doc = parseDocument(src, options); doc.warnings.forEach(warning => warnings.warn(warning)); if (doc.errors.length > 0) throw doc.errors[0]; return doc.toJSON(); }
function stringify(value, options) { const doc = new Document(options); doc.contents = value; return String(doc); }
const YAML = { createNode, defaultOptions: Document$1.defaultOptions, Document, parse, parseAllDocuments, parseCST: parseCst.parse, parseDocument, scalarOptions: Document$1.scalarOptions, stringify };
exports.YAML = YAML;
|