| // Generated by CoffeeScript 1.12.7 |
| (function() { |
| var XMLDocument, XMLDocumentCB, XMLStreamWriter, XMLStringWriter, assign, isFunction, ref; |
| |
| ref = require('./Utility'), assign = ref.assign, isFunction = ref.isFunction; |
| |
| XMLDocument = require('./XMLDocument'); |
| |
| XMLDocumentCB = require('./XMLDocumentCB'); |
| |
| XMLStringWriter = require('./XMLStringWriter'); |
| |
| XMLStreamWriter = require('./XMLStreamWriter'); |
| |
| module.exports.create = function(name, xmldec, doctype, options) { |
| var doc, root; |
| if (name == null) { |
| throw new Error("Root element needs a name"); |
| } |
| options = assign({}, xmldec, doctype, options); |
| doc = new XMLDocument(options); |
| root = doc.element(name); |
| if (!options.headless) { |
| doc.declaration(options); |
| if ((options.pubID != null) || (options.sysID != null)) { |
| doc.doctype(options); |
| } |
| } |
| return root; |
| }; |
| |
| module.exports.begin = function(options, onData, onEnd) { |
| var ref1; |
| if (isFunction(options)) { |
| ref1 = [options, onData], onData = ref1[0], onEnd = ref1[1]; |
| options = {}; |
| } |
| if (onData) { |
| return new XMLDocumentCB(options, onData, onEnd); |
| } else { |
| return new XMLDocument(options); |
| } |
| }; |
| |
| module.exports.stringWriter = function(options) { |
| return new XMLStringWriter(options); |
| }; |
| |
| module.exports.streamWriter = function(stream, options) { |
| return new XMLStreamWriter(stream, options); |
| }; |
| |
| }).call(this); |