1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- // Generated by CoffeeScript 2.4.1
- (function() {
- var NodeType, XMLDTDElement, XMLNode;
-
- XMLNode = require('./XMLNode');
-
- NodeType = require('./NodeType');
-
- // Represents an attribute
- module.exports = XMLDTDElement = class XMLDTDElement extends XMLNode {
- // Initializes a new instance of `XMLDTDElement`
-
- // `parent` the parent `XMLDocType` element
- // `name` element name
- // `value` element content (defaults to #PCDATA)
- constructor(parent, name, value) {
- super(parent);
- if (name == null) {
- throw new Error("Missing DTD element name. " + this.debugInfo());
- }
- if (!value) {
- value = '(#PCDATA)';
- }
- if (Array.isArray(value)) {
- value = '(' + value.join(',') + ')';
- }
- this.name = this.stringify.name(name);
- this.type = NodeType.ElementDeclaration;
- this.value = this.stringify.dtdElementValue(value);
- }
-
- // Converts the XML fragment to string
-
- // `options.pretty` pretty prints the result
- // `options.indent` indentation for pretty print
- // `options.offset` how many indentations to add to every line for pretty print
- // `options.newline` newline sequence for pretty print
- toString(options) {
- return this.options.writer.dtdElement(this, this.options.writer.filterOptions(options));
- }
-
- };
-
- }).call(this);
|