#ifndef DocumentFragment_h
#define DocumentFragment_h
#include "core/dom/ContainerNode.h"
#include "core/dom/ParserContentPolicy.h"
namespace WebCore {
class ExecutionContext;
class DocumentFragment : public ContainerNode {
public:
static PassRefPtr<DocumentFragment> create(Document&);
void parseHTML(const String&, Element* contextElement, ParserContentPolicy = AllowScriptingContent);
bool parseXML(const String&, Element* contextElement, ParserContentPolicy = AllowScriptingContent);
virtual bool canContainRangeEndPoint() const OVERRIDE FINAL { return true; }
virtual bool isTemplateContent() const { return false; }
protected:
DocumentFragment(Document*, ConstructionType = CreateContainer);
virtual String nodeName() const OVERRIDE FINAL;
private:
virtual NodeType nodeType() const OVERRIDE FINAL;
virtual PassRefPtr<Node> cloneNode(bool deep = true) OVERRIDE;
virtual bool childTypeAllowed(NodeType) const OVERRIDE;
};
DEFINE_NODE_TYPE_CASTS(DocumentFragment, nodeType() == Node::DOCUMENT_FRAGMENT_NODE);
}
#endif