| Index: Source/core/xml/DocumentXSLT.h | 
| diff --git a/Source/core/xml/DocumentXSLT.h b/Source/core/xml/DocumentXSLT.h | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..1dfb26493a843c37e015fe57b738e4079174d047 | 
| --- /dev/null | 
| +++ b/Source/core/xml/DocumentXSLT.h | 
| @@ -0,0 +1,56 @@ | 
| +// Copyright 2014 The Chromium Authors. All rights reserved. | 
| +// Use of this source code is governed by a BSD-style license that can be | 
| +// found in the LICENSE file. | 
| + | 
| +#ifndef DocumentXSLT_h | 
| +#define DocumentXSLT_h | 
| + | 
| +#include "core/dom/DocumentSupplementable.h" | 
| +#include "platform/heap/Handle.h" | 
| +#include "wtf/RefPtr.h" | 
| + | 
| +namespace blink { | 
| + | 
| +class Document; | 
| +class EventListener; | 
| +class ExecutionContext; | 
| +class ProcessingInstruction; | 
| + | 
| +class DocumentXSLT final : public NoBaseWillBeGarbageCollected<DocumentXSLT>, public DocumentSupplement { | 
| +    WTF_MAKE_NONCOPYABLE(DocumentXSLT); | 
| +    WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(DocumentXSLT); | 
| +public: | 
| +    Document* transformSourceDocument() | 
| +    { | 
| +        return m_transformSourceDocument.get(); | 
| +    } | 
| + | 
| +    void setTransformSourceDocument(Document* document) | 
| +    { | 
| +        ASSERT(document); | 
| +        m_transformSourceDocument = document; | 
| +    } | 
| + | 
| +    static DocumentXSLT& from(DocumentSupplementable&); | 
| +    static const char* supplementName(); | 
| + | 
| +    // The following static methods don't use any instance of DocumentXSLT. | 
| +    // They are just using DocumentXSLT namespace. | 
| +    static void applyXSLTransform(Document&, ProcessingInstruction*); | 
| +    static ProcessingInstruction* findXSLStyleSheet(Document&); | 
| +    static bool processingInstructionInsertedIntoDocument(Document&, ProcessingInstruction*); | 
| +    static bool processingInstructionRemovedFromDocument(Document&, ProcessingInstruction*); | 
| +    static bool sheetLoaded(Document&, ProcessingInstruction*); | 
| +    static bool hasTransformSourceDocument(Document&); | 
| + | 
| +    virtual void trace(Visitor*) override; | 
| + | 
| +private: | 
| +    DocumentXSLT(); | 
| + | 
| +    RefPtrWillBeMember<Document> m_transformSourceDocument; | 
| +}; | 
| + | 
| +} // namespace blink | 
| + | 
| +#endif | 
|  |