// Generated by CoffeeScript 2.4.1 (function() { var NodeType, XMLCharacterData, XMLProcessingInstruction; NodeType = require('./NodeType'); XMLCharacterData = require('./XMLCharacterData'); // Represents a processing instruction module.exports = XMLProcessingInstruction = class XMLProcessingInstruction extends XMLCharacterData { // Initializes a new instance of `XMLProcessingInstruction` // `parent` the parent node // `target` instruction target // `value` instruction value constructor(parent, target, value) { super(parent); if (target == null) { throw new Error("Missing instruction target. " + this.debugInfo()); } this.type = NodeType.ProcessingInstruction; this.target = this.stringify.insTarget(target); this.name = this.target; if (value) { this.value = this.stringify.insValue(value); } } // Creates and returns a deep clone of `this` clone() { return Object.create(this); } // 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.processingInstruction(this, this.options.writer.filterOptions(options)); } isEqualNode(node) { if (!super.isEqualNode(node)) { return false; } if (node.target !== this.target) { return false; } return true; } }; }).call(this);