1 /* 2 * Copyright (C) 2003, 2006 Apple Inc. All rights reserved. 3 * Copyright (C) 2006 Samuel Weinig (sam (at) webkit.org) 4 * 5 * This library is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU Lesser General Public 7 * License as published by the Free Software Foundation; either 8 * version 2 of the License, or (at your option) any later version. 9 * 10 * This library is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public 16 * License along with this library; if not, write to the Free Software 17 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 18 */ 19 20 #include "config.h" 21 #include "XMLSerializer.h" 22 23 #include "Document.h" 24 #include "ExceptionCode.h" 25 #include "markup.h" 26 27 namespace WebCore { 28 29 String XMLSerializer::serializeToString(Node* node, ExceptionCode& ec) 30 { 31 if (!node) 32 return String(); 33 34 if (!node->document()) { 35 // Due to the fact that DocumentType nodes are created by the DOMImplementation 36 // and not the Document, it is possible for it to not have a Document associated 37 // with it. It should be the only type of node where this is possible. 38 ASSERT(node->nodeType() == Node::DOCUMENT_TYPE_NODE); 39 40 ec = INVALID_ACCESS_ERR; 41 return String(); 42 } 43 44 return createMarkup(node); 45 } 46 47 } // namespace WebCore 48