2014-09-02 Alex Christensen <achristensen@webkit.org>
authordarin@apple.com <darin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 2 Sep 2014 16:28:49 +0000 (16:28 +0000)
committerdarin@apple.com <darin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 2 Sep 2014 16:28:49 +0000 (16:28 +0000)
More use of WEBCORE_EXPORT.

Reviewed by Darin Adler.

These changes from a patch attached to https://bugs.webkit.org/show_bug.cgi?id=136172
contain more deployment of the WEBCORE_EXPORT macro. As of this writing, the macro is
defined to do nothing, so landing these is a harmless way to get closer to be the point
where we can throw the switch to use these instead of explicit export files on OS X,
iOS, and Windows.

* bindings/js/JSDOMBinding.h:
* bindings/js/JSDOMGlobalObject.h:
* bindings/js/JSDOMWindowBase.h:
* bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
* bindings/scripts/CodeGeneratorObjC.pm:
(GenerateHeader):
* bridge/runtime_method.cpp:
* bridge/runtime_object.cpp:
* dom/Document.h:
* dom/Element.h:
* dom/Position.h:
* dom/Range.h:
* dom/StaticNodeList.h:
* dom/make_names.pl:
(printInit):
(printNamesCppFile):
* editing/Editor.h:
* editing/FrameSelection.h:
* editing/TextIterator.h:
* inspector/InspectorFrontendClient.h:
* inspector/InspectorFrontendClientLocal.h:
* loader/DocumentLoader.h:
* loader/FrameLoader.h:
* loader/cache/MemoryCache.h:
* loader/cocoa/DiskCacheMonitorCocoa.h:
* loader/mac/LoaderNSURLExtras.h:
* page/Page.h:
* page/PageGroup.h:
* page/SecurityPolicy.h:
* page/Settings.h:
* page/make_settings.pl:
(printGetterAndSetter):
* page/scrolling/ScrollingStateScrollingNode.h:
* platform/CrossThreadCopier.h:
* platform/LocalizedStrings.h:
* platform/MemoryPressureHandler.cpp:
* platform/PlatformScreen.h:
* platform/PublicSuffix.h:
* platform/graphics/Gradient.h:
* platform/graphics/cocoa/WebActionDisablingCALayerDelegate.h:
* platform/graphics/filters/FilterOperation.h:
* platform/ios/WebVideoFullscreenControllerAVKit.h:
* platform/mac/PlatformEventFactoryMac.h:
* platform/mac/WebCoreFullScreenPlaceholderView.h:
* platform/mac/WebCoreFullScreenWindow.h:
* platform/mac/WebCoreNSStringExtras.h:
* platform/mac/WebCoreObjCExtras.h:
* platform/mac/WebFontCache.h:
* platform/mac/WebVideoFullscreenController.h:
* platform/mac/WebWindowAnimation.h:
* platform/network/BlobRegistryImpl.h:
* platform/network/CredentialStorage.h:
* platform/network/PlatformCookieJar.h:
* platform/network/ProxyServer.h:
* platform/sql/SQLiteStatement.h:
* platform/text/TextEncoding.h:
* rendering/HitTestResult.h:
* rendering/RenderTreeAsText.h:
* testing/Internals.h:
Add many more correct uses of WEBCORE_EXPORT; remove a few incorrect ones.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@173176 268f45cc-cd09-0410-ab3c-d52691b4dbfc

56 files changed:
Source/WebCore/ChangeLog
Source/WebCore/bindings/js/JSDOMBinding.h
Source/WebCore/bindings/js/JSDOMGlobalObject.h
Source/WebCore/bindings/js/JSDOMWindowBase.h
Source/WebCore/bindings/scripts/CodeGeneratorJS.pm
Source/WebCore/bindings/scripts/CodeGeneratorObjC.pm
Source/WebCore/bridge/runtime_method.cpp
Source/WebCore/bridge/runtime_object.cpp
Source/WebCore/dom/Document.h
Source/WebCore/dom/Element.h
Source/WebCore/dom/Position.h
Source/WebCore/dom/Range.h
Source/WebCore/dom/StaticNodeList.h
Source/WebCore/dom/make_names.pl
Source/WebCore/editing/Editor.h
Source/WebCore/editing/FrameSelection.h
Source/WebCore/editing/TextIterator.h
Source/WebCore/inspector/InspectorFrontendClient.h
Source/WebCore/inspector/InspectorFrontendClientLocal.h
Source/WebCore/loader/DocumentLoader.h
Source/WebCore/loader/FrameLoader.h
Source/WebCore/loader/cache/MemoryCache.h
Source/WebCore/loader/cocoa/DiskCacheMonitorCocoa.h
Source/WebCore/loader/mac/LoaderNSURLExtras.h
Source/WebCore/page/Page.h
Source/WebCore/page/PageGroup.h
Source/WebCore/page/SecurityPolicy.h
Source/WebCore/page/Settings.h
Source/WebCore/page/make_settings.pl
Source/WebCore/page/scrolling/ScrollingStateScrollingNode.h
Source/WebCore/platform/CrossThreadCopier.h
Source/WebCore/platform/LocalizedStrings.h
Source/WebCore/platform/MemoryPressureHandler.cpp
Source/WebCore/platform/PlatformScreen.h
Source/WebCore/platform/PublicSuffix.h
Source/WebCore/platform/graphics/Gradient.h
Source/WebCore/platform/graphics/cocoa/WebActionDisablingCALayerDelegate.h
Source/WebCore/platform/graphics/filters/FilterOperation.h
Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.h
Source/WebCore/platform/mac/PlatformEventFactoryMac.h
Source/WebCore/platform/mac/WebCoreFullScreenPlaceholderView.h
Source/WebCore/platform/mac/WebCoreFullScreenWindow.h
Source/WebCore/platform/mac/WebCoreNSStringExtras.h
Source/WebCore/platform/mac/WebCoreObjCExtras.h
Source/WebCore/platform/mac/WebFontCache.h
Source/WebCore/platform/mac/WebVideoFullscreenController.h
Source/WebCore/platform/mac/WebWindowAnimation.h
Source/WebCore/platform/network/BlobRegistryImpl.h
Source/WebCore/platform/network/CredentialStorage.h
Source/WebCore/platform/network/PlatformCookieJar.h
Source/WebCore/platform/network/ProxyServer.h
Source/WebCore/platform/sql/SQLiteStatement.h
Source/WebCore/platform/text/TextEncoding.h
Source/WebCore/rendering/HitTestResult.h
Source/WebCore/rendering/RenderTreeAsText.h
Source/WebCore/testing/Internals.h

index 5b2887d..2045413 100644 (file)
@@ -1,3 +1,78 @@
+2014-09-02  Alex Christensen  <achristensen@webkit.org>
+
+        More use of WEBCORE_EXPORT.
+
+        Reviewed by Darin Adler.
+
+        These changes from a patch attached to https://bugs.webkit.org/show_bug.cgi?id=136172
+        contain more deployment of the WEBCORE_EXPORT macro. As of this writing, the macro is
+        defined to do nothing, so landing these is a harmless way to get closer to be the point
+        where we can throw the switch to use these instead of explicit export files on OS X,
+        iOS, and Windows.
+
+        * bindings/js/JSDOMBinding.h:
+        * bindings/js/JSDOMGlobalObject.h:
+        * bindings/js/JSDOMWindowBase.h:
+        * bindings/scripts/CodeGeneratorJS.pm:
+        (GenerateHeader):
+        (GenerateImplementation):
+        * bindings/scripts/CodeGeneratorObjC.pm:
+        (GenerateHeader):
+        * bridge/runtime_method.cpp:
+        * bridge/runtime_object.cpp:
+        * dom/Document.h:
+        * dom/Element.h:
+        * dom/Position.h:
+        * dom/Range.h:
+        * dom/StaticNodeList.h:
+        * dom/make_names.pl:
+        (printInit):
+        (printNamesCppFile):
+        * editing/Editor.h:
+        * editing/FrameSelection.h:
+        * editing/TextIterator.h:
+        * inspector/InspectorFrontendClient.h:
+        * inspector/InspectorFrontendClientLocal.h:
+        * loader/DocumentLoader.h:
+        * loader/FrameLoader.h:
+        * loader/cache/MemoryCache.h:
+        * loader/cocoa/DiskCacheMonitorCocoa.h:
+        * loader/mac/LoaderNSURLExtras.h:
+        * page/Page.h:
+        * page/PageGroup.h:
+        * page/SecurityPolicy.h:
+        * page/Settings.h:
+        * page/make_settings.pl:
+        (printGetterAndSetter):
+        * page/scrolling/ScrollingStateScrollingNode.h:
+        * platform/CrossThreadCopier.h:
+        * platform/LocalizedStrings.h:
+        * platform/MemoryPressureHandler.cpp:
+        * platform/PlatformScreen.h:
+        * platform/PublicSuffix.h:
+        * platform/graphics/Gradient.h:
+        * platform/graphics/cocoa/WebActionDisablingCALayerDelegate.h:
+        * platform/graphics/filters/FilterOperation.h:
+        * platform/ios/WebVideoFullscreenControllerAVKit.h:
+        * platform/mac/PlatformEventFactoryMac.h:
+        * platform/mac/WebCoreFullScreenPlaceholderView.h:
+        * platform/mac/WebCoreFullScreenWindow.h:
+        * platform/mac/WebCoreNSStringExtras.h:
+        * platform/mac/WebCoreObjCExtras.h:
+        * platform/mac/WebFontCache.h:
+        * platform/mac/WebVideoFullscreenController.h:
+        * platform/mac/WebWindowAnimation.h:
+        * platform/network/BlobRegistryImpl.h:
+        * platform/network/CredentialStorage.h:
+        * platform/network/PlatformCookieJar.h:
+        * platform/network/ProxyServer.h:
+        * platform/sql/SQLiteStatement.h:
+        * platform/text/TextEncoding.h:
+        * rendering/HitTestResult.h:
+        * rendering/RenderTreeAsText.h:
+        * testing/Internals.h:
+        Add many more correct uses of WEBCORE_EXPORT; remove a few incorrect ones.
+
 2014-09-02  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
 
         Introduce CSS_BASIC_TYPE_CASTS, and use it
index e77ab1d..b5c8c19 100644 (file)
@@ -300,14 +300,14 @@ enum IntegerConversionConfiguration {
     // FIXME: Implement Clamp
 };
 
-int32_t toInt32EnforceRange(JSC::ExecState*, JSC::JSValue);
-uint32_t toUInt32EnforceRange(JSC::ExecState*, JSC::JSValue);
+WEBCORE_EXPORT int32_t toInt32EnforceRange(JSC::ExecState*, JSC::JSValue);
+WEBCORE_EXPORT uint32_t toUInt32EnforceRange(JSC::ExecState*, JSC::JSValue);
 
-int8_t toInt8(JSC::ExecState*, JSC::JSValue, IntegerConversionConfiguration);
-uint8_t toUInt8(JSC::ExecState*, JSC::JSValue, IntegerConversionConfiguration);
+WEBCORE_EXPORT int8_t toInt8(JSC::ExecState*, JSC::JSValue, IntegerConversionConfiguration);
+WEBCORE_EXPORT uint8_t toUInt8(JSC::ExecState*, JSC::JSValue, IntegerConversionConfiguration);
 
-int16_t toInt16(JSC::ExecState*, JSC::JSValue, IntegerConversionConfiguration);
-uint16_t toUInt16(JSC::ExecState*, JSC::JSValue, IntegerConversionConfiguration);
+WEBCORE_EXPORT int16_t toInt16(JSC::ExecState*, JSC::JSValue, IntegerConversionConfiguration);
+WEBCORE_EXPORT uint16_t toUInt16(JSC::ExecState*, JSC::JSValue, IntegerConversionConfiguration);
 
 /*
     Convert a value to an integer as per <http://www.w3.org/TR/WebIDL/>.
@@ -329,8 +329,8 @@ inline uint32_t toUInt32(JSC::ExecState* exec, JSC::JSValue value, IntegerConver
     return value.toUInt32(exec);
 }
 
-int64_t toInt64(JSC::ExecState*, JSC::JSValue, IntegerConversionConfiguration);
-uint64_t toUInt64(JSC::ExecState*, JSC::JSValue, IntegerConversionConfiguration);
+WEBCORE_EXPORT int64_t toInt64(JSC::ExecState*, JSC::JSValue, IntegerConversionConfiguration);
+WEBCORE_EXPORT uint64_t toUInt64(JSC::ExecState*, JSC::JSValue, IntegerConversionConfiguration);
 
 // Returns a Date instance for the specified value, or null if the value is NaN or infinity.
 JSC::JSValue jsDateOrNull(JSC::ExecState*, double);
index c6ef3a9..e93c974 100644 (file)
@@ -54,7 +54,7 @@ namespace WebCore {
         JSDOMStructureMap& structures() { return m_structures; }
         JSDOMConstructorMap& constructors() { return m_constructors; }
 
-        ScriptExecutionContext* scriptExecutionContext() const;
+        WEBCORE_EXPORT ScriptExecutionContext* scriptExecutionContext() const;
 
         // Make binding code generation easier.
         JSDOMGlobalObject* globalObject() { return this; }
index 65002cb..1732c99 100644 (file)
@@ -71,7 +71,7 @@ namespace WebCore {
 
         JSDOMWindowShell* shell() const;
 
-        static JSC::VM& commonVM();
+        WEBCORE_EXPORT static JSC::VM& commonVM();
         static void fireFrameClearedWatchpointsForWindow(DOMWindow*);
 
     protected:
@@ -85,12 +85,12 @@ namespace WebCore {
     // Returns a JSDOMWindow or jsNull()
     // JSDOMGlobalObject* is ignored, accessing a window in any context will
     // use that DOMWindow's prototype chain.
-    JSC::JSValue toJS(JSC::ExecState*, JSDOMGlobalObject*, DOMWindow*);
+    WEBCORE_EXPORT JSC::JSValue toJS(JSC::ExecState*, JSDOMGlobalObject*, DOMWindow*);
     JSC::JSValue toJS(JSC::ExecState*, DOMWindow*);
 
     // Returns JSDOMWindow or 0
     JSDOMWindow* toJSDOMWindow(Frame*, DOMWrapperWorld&);
-    JSDOMWindow* toJSDOMWindow(JSC::JSValue);
+    WEBCORE_EXPORT JSDOMWindow* toJSDOMWindow(JSC::JSValue);
 
 } // namespace WebCore
 
index 3f977ec..8d54da1 100644 (file)
@@ -1164,7 +1164,7 @@ sub GenerateHeader
         push(@headerContent, "\n");
     }
     if (ShouldGenerateToJSDeclaration($hasParent, $interface)) {
-        push(@headerContent, "JSC::JSValue toJS(JSC::ExecState*, JSDOMGlobalObject*, $implType*);\n");
+        push(@headerContent, "WEBCORE_EXPORT JSC::JSValue toJS(JSC::ExecState*, JSDOMGlobalObject*, $implType*);\n");
     }
     if (!$hasParent || $interface->extendedAttributes->{"JSGenerateToNativeObject"}) {
         if ($interfaceName eq "NodeFilter") {
@@ -1172,7 +1172,7 @@ sub GenerateHeader
         } elsif ($interfaceName eq "DOMStringList") {
             push(@headerContent, "PassRefPtr<DOMStringList> toDOMStringList(JSC::ExecState*, JSC::JSValue);\n");
         } else {
-            push(@headerContent, "$implType* to${interfaceName}(JSC::JSValue);\n");
+            push(@headerContent, "WEBCORE_EXPORT $implType* to${interfaceName}(JSC::JSValue);\n");
         }
     }
     if ($usesToJSNewlyCreated{$interfaceName}) {
@@ -1964,9 +1964,9 @@ sub GenerateImplementation
                                \%conditionals, $justGenerateValueArray);
 
     if ($justGenerateValueArray) {
-        push(@implContent, "const ClassInfo ${className}Prototype::s_info = { \"${visibleInterfaceName}Prototype\", &Base::s_info, 0, CREATE_METHOD_TABLE(${className}Prototype) };\n\n");
+        push(@implContent, "WEBCORE_EXPORT const ClassInfo ${className}Prototype::s_info = { \"${visibleInterfaceName}Prototype\", &Base::s_info, 0, CREATE_METHOD_TABLE(${className}Prototype) };\n\n");
     } else {
-        push(@implContent, "const ClassInfo ${className}Prototype::s_info = { \"${visibleInterfaceName}Prototype\", &Base::s_info, &${className}PrototypeTable, CREATE_METHOD_TABLE(${className}Prototype) };\n\n");
+        push(@implContent, "WEBCORE_EXPORT const ClassInfo ${className}Prototype::s_info = { \"${visibleInterfaceName}Prototype\", &Base::s_info, &${className}PrototypeTable, CREATE_METHOD_TABLE(${className}Prototype) };\n\n");
     }
 
     if (PrototypeOverridesGetOwnPropertySlot($interface)) {
@@ -2027,7 +2027,7 @@ sub GenerateImplementation
     }
 
     # - Initialize static ClassInfo object
-    push(@implContent, "const ClassInfo $className" . "::s_info = { \"${visibleInterfaceName}\", &Base::s_info, ");
+    push(@implContent, "WEBCORE_EXPORT const ClassInfo $className" . "::s_info = { \"${visibleInterfaceName}\", &Base::s_info, ");
 
     if ($numInstanceAttributes > 0) {
         push(@implContent, "&${className}Table");
index d237520..95e60f9 100644 (file)
@@ -1118,8 +1118,8 @@ sub GenerateHeader
         }
         push(@internalHeaderContent, "}\n\n");
 
-        push(@internalHeaderContent, "$implType* core($className *);\n");
-        push(@internalHeaderContent, "$className *kit($implType*);\n");
+        push(@internalHeaderContent, "WEBCORE_EXPORT $implType* core($className *);\n");
+        push(@internalHeaderContent, "WEBCORE_EXPORT $className *kit($implType*);\n");
 
         if ($interface->extendedAttributes->{"ObjCPolymorphic"}) {
             push(@internalHeaderContent, "Class kitClass($implType*);\n");
index a8ad9a9..3914085 100644 (file)
@@ -39,7 +39,7 @@ namespace JSC {
 
 using namespace Bindings;
 
-const ClassInfo RuntimeMethod::s_info = { "RuntimeMethod", &InternalFunction::s_info, 0, CREATE_METHOD_TABLE(RuntimeMethod) };
+WEBCORE_EXPORT const ClassInfo RuntimeMethod::s_info = { "RuntimeMethod", &InternalFunction::s_info, 0, CREATE_METHOD_TABLE(RuntimeMethod) };
 
 RuntimeMethod::RuntimeMethod(JSGlobalObject* globalObject, Structure* structure, Method* method)
     // Callers will need to pass in the right global object corresponding to this native object "method".
index 10b01ef..91f07bc 100644 (file)
@@ -35,7 +35,7 @@ using namespace WebCore;
 namespace JSC {
 namespace Bindings {
 
-const ClassInfo RuntimeObject::s_info = { "RuntimeObject", &Base::s_info, 0, CREATE_METHOD_TABLE(RuntimeObject) };
+WEBCORE_EXPORT const ClassInfo RuntimeObject::s_info = { "RuntimeObject", &Base::s_info, 0, CREATE_METHOD_TABLE(RuntimeObject) };
 
 RuntimeObject::RuntimeObject(VM& vm, Structure* structure, PassRefPtr<Instance> instance)
     : JSDestructibleObject(vm, structure)
index b6c510d..8b6e192 100644 (file)
@@ -433,7 +433,7 @@ public:
     PassRefPtr<Node> importNode(Node* importedNode, ExceptionCode& ec) { return importNode(importedNode, true, ec); }
     PassRefPtr<Node> importNode(Node* importedNode, bool deep, ExceptionCode&);
     WEBCORE_EXPORT PassRefPtr<Element> createElementNS(const String& namespaceURI, const String& qualifiedName, ExceptionCode&);
-    PassRefPtr<Element> createElement(const QualifiedName&, bool createdByParser);
+    WEBCORE_EXPORT PassRefPtr<Element> createElement(const QualifiedName&, bool createdByParser);
 
     bool cssRegionsEnabled() const;
     bool cssCompositingEnabled() const;
@@ -994,7 +994,7 @@ public:
     void setHasNodesWithPlaceholderStyle() { m_hasNodesWithPlaceholderStyle = true; }
 
     WEBCORE_EXPORT const Vector<IconURL>& shortcutIconURLs();
-    const Vector<IconURL>& iconURLs(int iconTypesMask);
+    WEBCORE_EXPORT const Vector<IconURL>& iconURLs(int iconTypesMask);
     void addIconURL(const String& url, const String& mimeType, const String& size, IconType);
 
     void updateFocusAppearanceSoon(bool restorePreviousSelection);
@@ -1079,7 +1079,7 @@ public:
     bool annotatedRegionsDirty() const { return m_annotatedRegionsDirty; }
     bool hasAnnotatedRegions () const { return m_hasAnnotatedRegions; }
     void setHasAnnotatedRegions(bool f) { m_hasAnnotatedRegions = f; }
-    const Vector<AnnotatedRegionValue>& annotatedRegions() const;
+    WEBCORE_EXPORT const Vector<AnnotatedRegionValue>& annotatedRegions() const;
     void setAnnotatedRegions(const Vector<AnnotatedRegionValue>&);
 #endif
 
index f065f3d..03ef0c9 100644 (file)
@@ -171,7 +171,7 @@ public:
     // in style attribute or one of the SVG animation attributes.
     bool hasAttributesWithoutUpdate() const;
 
-    bool hasAttribute(const AtomicString& name) const;
+    WEBCORE_EXPORT bool hasAttribute(const AtomicString& name) const;
     bool hasAttributeNS(const AtomicString& namespaceURI, const AtomicString& localName) const;
 
     WEBCORE_EXPORT const AtomicString& getAttribute(const AtomicString& name) const;
index 0808b58..298117f 100644 (file)
@@ -83,7 +83,7 @@ public:
     WEBCORE_EXPORT Position(PassRefPtr<Node> anchorNode, LegacyEditingOffset);
 
     // For creating before/after positions:
-    Position(PassRefPtr<Node> anchorNode, AnchorType);
+    WEBCORE_EXPORT Position(PassRefPtr<Node> anchorNode, AnchorType);
     Position(PassRefPtr<Text> textNode, unsigned offset);
 
     // For creating offset positions:
index 5e65e45..34cb215 100644 (file)
@@ -69,10 +69,10 @@ public:
     WEBCORE_EXPORT Node* endContainer() const { return m_end.container(); }
     WEBCORE_EXPORT int endOffset() const { return m_end.offset(); }
 
-    Node* startContainer(ExceptionCode&) const;
-    int startOffset(ExceptionCode&) const;
-    Node* endContainer(ExceptionCode&) const;
-    int endOffset(ExceptionCode&) const;
+    WEBCORE_EXPORT Node* startContainer(ExceptionCode&) const;
+    WEBCORE_EXPORT int startOffset(ExceptionCode&) const;
+    WEBCORE_EXPORT Node* endContainer(ExceptionCode&) const;
+    WEBCORE_EXPORT int endOffset(ExceptionCode&) const;
     WEBCORE_EXPORT bool collapsed(ExceptionCode&) const;
 
     WEBCORE_EXPORT Node* commonAncestorContainer(ExceptionCode&) const;
@@ -129,11 +129,11 @@ public:
     };
 
     // Not transform-friendly
-    void textRects(Vector<IntRect>&, bool useSelectionHeight = false, RangeInFixedPosition* = 0) const;
+    WEBCORE_EXPORT void textRects(Vector<IntRect>&, bool useSelectionHeight = false, RangeInFixedPosition* = nullptr) const;
     WEBCORE_EXPORT IntRect boundingBox() const;
 
     // Transform-friendly
-    WEBCORE_EXPORT void textQuads(Vector<FloatQuad>&, bool useSelectionHeight = false, RangeInFixedPosition* = 0) const;
+    WEBCORE_EXPORT void textQuads(Vector<FloatQuad>&, bool useSelectionHeight = false, RangeInFixedPosition* = nullptr) const;
     void getBorderAndTextQuads(Vector<FloatQuad>&) const;
     WEBCORE_EXPORT FloatRect boundingRect() const;
 #if PLATFORM(IOS)
index c8996c6..7df0c81 100644 (file)
@@ -37,7 +37,7 @@
 
 namespace WebCore {
 
-class StaticNodeList final : public NodeList {
+class WEBCORE_EXPORT StaticNodeList final : public NodeList {
 public:
     static PassRefPtr<StaticNodeList> adopt(Vector<Ref<Node>>& nodes)
     {
index f1db18b..a46f10b 100755 (executable)
@@ -120,7 +120,7 @@ if (length($fontNamesIn)) {
     print F StaticString::GenerateStrings(\%parameters);
 
     for my $name (sort keys %parameters) {
-        print F "DEFINE_GLOBAL(AtomicString, $name)\n";
+        print F "WEBCORE_EXPORT DEFINE_GLOBAL(AtomicString, $name)\n";
     }
 
     printInit($F, 0);
@@ -568,7 +568,7 @@ sub printInit
     my ($F, $isDefinition) = @_;
 
     if ($isDefinition) {
-        print F "\nvoid init();\n\n";
+        print F "\nWEBCORE_EXPORT void init();\n\n";
         print F "} }\n\n";
         print F "#endif\n\n";
         return;
@@ -751,14 +751,14 @@ sub printNamesCppFile
     
     my $lowercaseNamespacePrefix = lc($parameters{namespacePrefix});
 
-    print F "DEFINE_GLOBAL(AtomicString, ${lowercaseNamespacePrefix}NamespaceURI)\n\n";
+    print F "WEBCORE_EXPORT DEFINE_GLOBAL(AtomicString, ${lowercaseNamespacePrefix}NamespaceURI)\n\n";
 
     print F StaticString::GenerateStrings(\%allStrings);
 
     if (keys %allTags) {
         print F "// Tags\n";
         for my $name (sort keys %allTags) {
-            print F "DEFINE_GLOBAL($parameters{namespace}QualifiedName, ", $name, "Tag)\n";
+            print F "WEBCORE_EXPORT DEFINE_GLOBAL($parameters{namespace}QualifiedName, ", $name, "Tag)\n";
         }
         
         print F "\n\nconst WebCore::$parameters{namespace}QualifiedName* const* get$parameters{namespace}Tags()\n";
@@ -774,7 +774,7 @@ sub printNamesCppFile
     if (keys %allAttrs) {
         print F "\n// Attributes\n";
         for my $name (sort keys %allAttrs) {
-            print F "DEFINE_GLOBAL(QualifiedName, ", $name, "Attr)\n";
+            print F "WEBCORE_EXPORT DEFINE_GLOBAL(QualifiedName, ", $name, "Attr)\n";
         }
         print F "\n\nconst WebCore::QualifiedName* const* get$parameters{namespace}Attrs()\n";
         print F "{\n    static const WebCore::QualifiedName* const $parameters{namespace}Attrs[] = {\n";
index f0e6dae..89f0f87 100644 (file)
@@ -351,7 +351,7 @@ public:
 
     Node* findEventTargetFrom(const VisibleSelection& selection) const;
 
-    String selectedText() const;
+    WEBCORE_EXPORT String selectedText() const;
     String selectedTextForDataTransfer() const;
     WEBCORE_EXPORT bool findString(const String&, FindOptions);
 
index 6c5545b..3606012 100644 (file)
@@ -146,7 +146,7 @@ public:
     WEBCORE_EXPORT void setSelection(const VisibleSelection&, SetSelectionOptions = defaultSetSelectionOptions(), CursorAlignOnScroll = AlignCursorOnScrollIfNeeded, TextGranularity = CharacterGranularity);
     WEBCORE_EXPORT bool setSelectedRange(Range*, EAffinity, bool closeTyping);
     WEBCORE_EXPORT void selectAll();
-    void clear();
+    WEBCORE_EXPORT void clear();
     void prepareForDestruction();
 
     void didLayout();
index c7f0c3a..f7d58b4 100644 (file)
@@ -100,7 +100,7 @@ public:
     WEBCORE_EXPORT void advance();
 
     StringView text() const { ASSERT(!atEnd()); return m_text; }
-    PassRefPtr<Range> range() const;
+    WEBCORE_EXPORT PassRefPtr<Range> range() const;
     WEBCORE_EXPORT Node* node() const;
 
     const TextIteratorCopyableText& copyableText() const { ASSERT(!atEnd()); return m_copyableText; }
index 9b0b75d..7cf0a03 100644 (file)
@@ -49,7 +49,7 @@ public:
 
     virtual ~InspectorFrontendClient() { }
 
-    virtual void windowObjectCleared() = 0;
+    WEBCORE_EXPORT virtual void windowObjectCleared() = 0;
     virtual void frontendLoaded() = 0;
 
     virtual void moveWindowBy(float x, float y) = 0;
@@ -59,13 +59,13 @@ public:
     virtual void bringToFront() = 0;
     virtual void closeWindow() = 0;
 
-    virtual void requestSetDockSide(DockSide) = 0;
-    virtual void changeAttachedWindowHeight(unsigned) = 0;
-    virtual void changeAttachedWindowWidth(unsigned) = 0;
+    WEBCORE_EXPORT virtual void requestSetDockSide(DockSide) = 0;
+    WEBCORE_EXPORT virtual void changeAttachedWindowHeight(unsigned) = 0;
+    WEBCORE_EXPORT virtual void changeAttachedWindowWidth(unsigned) = 0;
 
     virtual void setToolbarHeight(unsigned) = 0;
 
-    virtual void openInNewTab(const String& url) = 0;
+    WEBCORE_EXPORT virtual void openInNewTab(const String& url) = 0;
 
     virtual bool canSave() = 0;
     virtual void save(const WTF::String& url, const WTF::String& content, bool base64Encoded, bool forceSaveAs) = 0;
@@ -73,9 +73,9 @@ public:
 
     virtual void inspectedURLChanged(const String&) = 0;
 
-    virtual void sendMessageToBackend(const String&) = 0;
+    WEBCORE_EXPORT virtual void sendMessageToBackend(const String&) = 0;
 
-    virtual bool isUnderTest() = 0;
+    WEBCORE_EXPORT virtual bool isUnderTest() = 0;
 };
 
 } // namespace WebCore
index 17cc05b..e19ce41 100644 (file)
@@ -47,7 +47,7 @@ class Page;
 class InspectorFrontendClientLocal : public InspectorFrontendClient {
     WTF_MAKE_NONCOPYABLE(InspectorFrontendClientLocal); WTF_MAKE_FAST_ALLOCATED;
 public:
-    class Settings {
+    class WEBCORE_EXPORT Settings {
     public:
         Settings() { }
         virtual ~Settings() { }
index aa483aa..403e195 100644 (file)
@@ -101,7 +101,7 @@ namespace WebCore {
         WEBCORE_EXPORT const ResourceRequest& originalRequestCopy() const;
 
         WEBCORE_EXPORT const ResourceRequest& request() const;
-        ResourceRequest& request();
+        WEBCORE_EXPORT ResourceRequest& request();
 
         CachedResourceLoader& cachedResourceLoader() { return m_cachedResourceLoader.get(); }
 
index 52efa3c..f6c11f5 100644 (file)
@@ -119,7 +119,7 @@ public:
 
     void changeLocation(SecurityOrigin*, const URL&, const String& referrer, LockHistory = LockHistory::Yes,
         LockBackForwardList = LockBackForwardList::Yes, bool refresh = false, AllowNavigationToInvalidURL = AllowNavigationToInvalidURL::Yes);
-    void urlSelected(const URL&, const String& target, PassRefPtr<Event>, LockHistory, LockBackForwardList, ShouldSendReferrer);
+    WEBCORE_EXPORT void urlSelected(const URL&, const String& target, PassRefPtr<Event>, LockHistory, LockBackForwardList, ShouldSendReferrer);
     void submitForm(PassRefPtr<FormSubmission>);
 
     WEBCORE_EXPORT void reload(bool endToEndReload = false);
index f36ccbe..1b77ff3 100644 (file)
@@ -113,7 +113,7 @@ public:
 
     WEBCORE_EXPORT CachedResource* resourceForURL(const URL&);
     WEBCORE_EXPORT CachedResource* resourceForURL(const URL&, SessionID);
-    CachedResource* resourceForRequest(const ResourceRequest&, SessionID);
+    WEBCORE_EXPORT CachedResource* resourceForRequest(const ResourceRequest&, SessionID);
 
     bool add(CachedResource*);
     void remove(CachedResource* resource) { evict(resource); }
index b629bf6..f12e399 100644 (file)
@@ -36,14 +36,14 @@ namespace WebCore {
 
 class SharedBuffer;
 
-class DiskCacheMonitor {
+class WEBCORE_EXPORT DiskCacheMonitor {
 public:
     static void monitorFileBackingStoreCreation(const ResourceRequest&, SessionID, CFCachedURLResponseRef);
     static PassRefPtr<SharedBuffer> tryGetFileBackedSharedBufferFromCFURLCachedResponse(CFCachedURLResponseRef);
     virtual ~DiskCacheMonitor() { }
 
 protected:
-    DiskCacheMonitor(const ResourceRequest&, SessionID, CFCachedURLResponseRef);
+    WEBCORE_EXPORT DiskCacheMonitor(const ResourceRequest&, SessionID, CFCachedURLResponseRef);
 
     virtual void resourceBecameFileBacked(PassRefPtr<SharedBuffer>);
 
index 95493f2..f63aa93 100644 (file)
@@ -33,5 +33,5 @@ class String;
 }
 
 extern "C" {
-NSString *suggestedFilenameWithMIMEType(NSURL *, const WTF::String& MIMEType);
+WEBCORE_EXPORT NSString *suggestedFilenameWithMIMEType(NSURL *, const WTF::String& MIMEType);
 }
index 91105a6..df08bbd 100644 (file)
@@ -210,7 +210,7 @@ public:
 #endif
     ValidationMessageClient* validationMessageClient() const { return m_validationMessageClient; }
 
-    ScrollingCoordinator* scrollingCoordinator();
+    WEBCORE_EXPORT ScrollingCoordinator* scrollingCoordinator();
 
     WEBCORE_EXPORT String scrollingStateTreeAsText();
     WEBCORE_EXPORT String synchronousScrollingReasonsAsText();
index 798fffd..6f839fd 100644 (file)
@@ -53,7 +53,7 @@ namespace WebCore {
     class PageGroup : public Supplementable<PageGroup> {
         WTF_MAKE_NONCOPYABLE(PageGroup); WTF_MAKE_FAST_ALLOCATED;
     public:
-        explicit PageGroup(const String& name);
+        WEBCORE_EXPORT explicit PageGroup(const String& name);
         explicit PageGroup(Page&);
         ~PageGroup();
 
@@ -77,7 +77,7 @@ namespace WebCore {
         WEBCORE_EXPORT bool isLinkVisited(LinkHash);
 
         void addVisitedLink(const URL&);
-        void addVisitedLink(const UChar*, size_t);
+        WEBCORE_EXPORT void addVisitedLink(const UChar*, size_t);
         WEBCORE_EXPORT void addVisitedLinkHash(LinkHash);
         WEBCORE_EXPORT void removeVisitedLink(const URL&);
         void removeVisitedLinks();
@@ -105,7 +105,7 @@ namespace WebCore {
 
 #if ENABLE(VIDEO_TRACK)
         WEBCORE_EXPORT void captionPreferencesChanged();
-        CaptionUserPreferences* captionPreferences();
+        WEBCORE_EXPORT CaptionUserPreferences* captionPreferences();
 #endif
 
     private:
index 487f12c..7679c9f 100644 (file)
@@ -47,7 +47,7 @@ public:
     // Returns the referrer modified according to the referrer policy for a
     // navigation to a given URL. If the referrer returned is empty, the
     // referrer header should be omitted.
-    static String generateReferrerHeader(ReferrerPolicy, const URL&, const String& referrer);
+    WEBCORE_EXPORT static String generateReferrerHeader(ReferrerPolicy, const URL&, const String& referrer);
 
     enum LocalLoadPolicy {
         AllowLocalLoadsForAll, // No restriction on local loads.
index a3a0147..1a66576 100644 (file)
@@ -170,7 +170,7 @@ public:
 
     double domTimerAlignmentInterval() const;
 
-    void setLayoutInterval(std::chrono::milliseconds);
+    WEBCORE_EXPORT void setLayoutInterval(std::chrono::milliseconds);
     std::chrono::milliseconds layoutInterval() const { return m_layoutInterval; }
 
 #if ENABLE(HIDDEN_PAGE_DOM_TIMER_THROTTLING)
index 1d648fd..a6625d1 100755 (executable)
@@ -240,11 +240,11 @@ sub printGetterAndSetter($$$$)
     my ($file, $settingName, $type, $setNeedsStyleRecalcInAllFrames) = @_;
     my $setterFunctionName = setterFunctionName($settingName);
     if (lc(substr($type, 0, 1)) eq substr($type, 0, 1)) {
-        print $file "    $type $settingName() const { return m_$settingName; } \\\n";
-        print $file "    void $setterFunctionName($type $settingName)";
+        print $file "    WEBCORE_EXPORT $type $settingName() const { return m_$settingName; } \\\n";
+        print $file "    WEBCORE_EXPORT void $setterFunctionName($type $settingName)";
     } else {
-        print $file "    const $type& $settingName() { return m_$settingName; } \\\n";
-        print $file "    void $setterFunctionName(const $type& $settingName)";
+        print $file "    WEBCORE_EXPORT const $type& $settingName() { return m_$settingName; } \\\n";
+        print $file "    WEBCORE_EXPORT void $setterFunctionName(const $type& $settingName)";
     }
     if ($setNeedsStyleRecalcInAllFrames) {
         print $file "; \\\n";
index 30e708c..be39fe9 100644 (file)
@@ -71,10 +71,10 @@ public:
 
 #if ENABLE(CSS_SCROLL_SNAP)
     const Vector<float>& horizontalSnapOffsets() const { return m_horizontalSnapOffsets; }
-    void setHorizontalSnapOffsets(const Vector<float>&);
+    WEBCORE_EXPORT void setHorizontalSnapOffsets(const Vector<float>&);
 
     const Vector<float>& verticalSnapOffsets() const { return m_verticalSnapOffsets; }
-    void setVerticalSnapOffsets(const Vector<float>&);
+    WEBCORE_EXPORT void setVerticalSnapOffsets(const Vector<float>&);
 #endif
 
     const ScrollableAreaParameters& scrollableAreaParameters() const { return m_scrollableAreaParameters; }
index 8dda516..53163f4 100644 (file)
@@ -126,7 +126,7 @@ namespace WebCore {
         static Type copy(const URL&);
     };
 
-    template<> struct CrossThreadCopierBase<false, false, String> {
+    template<> struct WEBCORE_EXPORT CrossThreadCopierBase<false, false, String> {
         typedef String Type;
         static Type copy(const String&);
     };
@@ -168,37 +168,37 @@ namespace WebCore {
     };
 
     struct IDBDatabaseMetadata;
-    template<> struct CrossThreadCopierBase<false, false, IDBDatabaseMetadata> {
+    template<> struct WEBCORE_EXPORT CrossThreadCopierBase<false, false, IDBDatabaseMetadata> {
         typedef IDBDatabaseMetadata Type;
         static Type copy(const IDBDatabaseMetadata&);
     };
 
     struct IDBGetResult;
-    template<> struct CrossThreadCopierBase<false, false, IDBGetResult> {
+    template<> struct WEBCORE_EXPORT CrossThreadCopierBase<false, false, IDBGetResult> {
         typedef IDBGetResult Type;
         static Type copy(const IDBGetResult&);
     };
 
     struct IDBIndexMetadata;
-    template<> struct CrossThreadCopierBase<false, false, IDBIndexMetadata> {
+    template<> struct WEBCORE_EXPORT CrossThreadCopierBase<false, false, IDBIndexMetadata> {
         typedef IDBIndexMetadata Type;
         static Type copy(const IDBIndexMetadata&);
     };
 
     struct IDBKeyData;
-    template<> struct CrossThreadCopierBase<false, false, IDBKeyData> {
+    template<> struct WEBCORE_EXPORT CrossThreadCopierBase<false, false, IDBKeyData> {
         typedef IDBKeyData Type;
         static Type copy(const IDBKeyData&);
     };
 
     struct IDBKeyRangeData;
-    template<> struct CrossThreadCopierBase<false, false, IDBKeyRangeData> {
+    template<> struct WEBCORE_EXPORT CrossThreadCopierBase<false, false, IDBKeyRangeData> {
         typedef IDBKeyRangeData Type;
         static Type copy(const IDBKeyRangeData&);
     };
 
     struct IDBObjectStoreMetadata;
-    template<> struct CrossThreadCopierBase<false, false, IDBObjectStoreMetadata> {
+    template<> struct WEBCORE_EXPORT CrossThreadCopierBase<false, false, IDBObjectStoreMetadata> {
         typedef IDBObjectStoreMetadata Type;
         static Type copy(const IDBObjectStoreMetadata&);
     };
index 8b153d0..f71c1be 100644 (file)
@@ -88,7 +88,7 @@ namespace WebCore {
     String contextMenuItemTagLearnSpelling();
     String contextMenuItemTagSearchWeb();
     String contextMenuItemTagLookUpInDictionary(const String& selectedString);
-    String contextMenuItemTagOpenLink();
+    WEBCORE_EXPORT String contextMenuItemTagOpenLink();
     WEBCORE_EXPORT String contextMenuItemTagIgnoreGrammar();
     WEBCORE_EXPORT String contextMenuItemTagSpellingMenu();
     WEBCORE_EXPORT String contextMenuItemTagShowSpellingPanel(bool show);
index cd7575e..d891f92 100644 (file)
@@ -45,7 +45,7 @@
 
 namespace WebCore {
 
-bool MemoryPressureHandler::ReliefLogger::s_loggingEnabled = false;
+WEBCORE_EXPORT bool MemoryPressureHandler::ReliefLogger::s_loggingEnabled = false;
 
 MemoryPressureHandler& memoryPressureHandler()
 {
index ed8c0f6..a8d09a4 100644 (file)
@@ -59,8 +59,8 @@ namespace WebCore {
 #if PLATFORM(MAC)
     NSScreen *screenForWindow(NSWindow *);
 
-    FloatRect toUserSpace(const NSRect&, NSWindow *destination);
-    NSRect toDeviceSpace(const FloatRect&, NSWindow *source);
+    WEBCORE_EXPORT FloatRect toUserSpace(const NSRect&, NSWindow *destination);
+    WEBCORE_EXPORT NSRect toDeviceSpace(const FloatRect&, NSWindow *source);
 
     NSPoint flipScreenPoint(const NSPoint&, NSScreen *);
 #endif
index 073065f..f7ee973 100644 (file)
@@ -33,7 +33,7 @@
 namespace WebCore {
 
 WEBCORE_EXPORT bool isPublicSuffix(const String& domain);
-String topPrivatelyControlledDomain(const String& domain);
+WEBCORE_EXPORT String topPrivatelyControlledDomain(const String& domain);
 
 } // namespace WebCore
 
index fb255b0..6b3880b 100644 (file)
@@ -69,7 +69,7 @@ namespace WebCore {
 
         struct ColorStop;
         WEBCORE_EXPORT void addColorStop(const ColorStop&);
-        void addColorStop(float, const Color&);
+        WEBCORE_EXPORT void addColorStop(float, const Color&);
 
         bool hasAlpha() const;
 
index b82b75b..60bf78a 100644 (file)
@@ -26,7 +26,7 @@
 #ifndef WebActionDisablingCALayerDelegate_h
 #define WebActionDisablingCALayerDelegate_h
 
-@interface WebActionDisablingCALayerDelegate : NSObject
+WEBCORE_EXPORT @interface WebActionDisablingCALayerDelegate : NSObject
 
 + (instancetype)shared;
 
index 9903751..0bc84da 100644 (file)
@@ -119,7 +119,7 @@ protected:
 #define FILTEROPERATION_TYPE_CASTS(ToValueTypeName, predicate) \
     TYPE_CASTS_BASE(ToValueTypeName, WebCore::FilterOperation, value, value->predicate, value.predicate)
 
-class DefaultFilterOperation : public FilterOperation {
+class WEBCORE_EXPORT DefaultFilterOperation : public FilterOperation {
 public:
     static PassRefPtr<DefaultFilterOperation> create(OperationType representedType)
     {
@@ -216,7 +216,7 @@ FILTEROPERATION_TYPE_CASTS(ReferenceFilterOperation, type() == FilterOperation::
 
 // GRAYSCALE, SEPIA, SATURATE and HUE_ROTATE are variations on a basic color matrix effect.
 // For HUE_ROTATE, the angle of rotation is stored in m_amount.
-class BasicColorMatrixFilterOperation : public FilterOperation {
+class WEBCORE_EXPORT BasicColorMatrixFilterOperation : public FilterOperation {
 public:
     static PassRefPtr<BasicColorMatrixFilterOperation> create(double amount, OperationType type)
     {
@@ -249,7 +249,7 @@ private:
 FILTEROPERATION_TYPE_CASTS(BasicColorMatrixFilterOperation, isBasicColorMatrixFilterOperation());
 
 // INVERT, BRIGHTNESS, CONTRAST and OPACITY are variations on a basic component transfer effect.
-class BasicComponentTransferFilterOperation : public FilterOperation {
+class WEBCORE_EXPORT BasicComponentTransferFilterOperation : public FilterOperation {
 public:
     static PassRefPtr<BasicComponentTransferFilterOperation> create(double amount, OperationType type)
     {
@@ -283,7 +283,7 @@ private:
 
 FILTEROPERATION_TYPE_CASTS(BasicComponentTransferFilterOperation, isBasicComponentTransferFilterOperation());
 
-class BlurFilterOperation : public FilterOperation {
+class WEBCORE_EXPORT BlurFilterOperation : public FilterOperation {
 public:
     static PassRefPtr<BlurFilterOperation> create(Length stdDeviation)
     {
@@ -316,7 +316,7 @@ private:
 
 FILTEROPERATION_TYPE_CASTS(BlurFilterOperation, type() == FilterOperation::BLUR);
 
-class DropShadowFilterOperation : public FilterOperation {
+class WEBCORE_EXPORT DropShadowFilterOperation : public FilterOperation {
 public:
     static PassRefPtr<DropShadowFilterOperation> create(const IntPoint& location, int stdDeviation, Color color)
     {
index 59c92c4..66ad5fe 100644 (file)
@@ -32,7 +32,7 @@
 
 OBJC_CLASS UIView;
 
-@interface WebVideoFullscreenController : NSObject
+WEBCORE_EXPORT @interface WebVideoFullscreenController : NSObject
 - (void)setMediaElement:(WebCore::HTMLMediaElement*)mediaElement;
 - (WebCore::HTMLMediaElement*)mediaElement;
 - (void)enterFullscreen:(UIView *)view;
index 2af20f8..d7e1553 100644 (file)
@@ -34,9 +34,9 @@ namespace WebCore {
 
 class PlatformEventFactory {
 public:
-    static PlatformMouseEvent createPlatformMouseEvent(NSEvent *, NSView *windowView);
+    WEBCORE_EXPORT static PlatformMouseEvent createPlatformMouseEvent(NSEvent *, NSView *windowView);
     static PlatformWheelEvent createPlatformWheelEvent(NSEvent *, NSView *windowView);
-    static PlatformKeyboardEvent createPlatformKeyboardEvent(NSEvent *);
+    WEBCORE_EXPORT static PlatformKeyboardEvent createPlatformKeyboardEvent(NSEvent *);
 };
 
 #if PLATFORM(COCOA) && defined(__OBJC__)
index 87e699a..6e5eb46 100644 (file)
@@ -30,7 +30,7 @@
 
 #import <wtf/RetainPtr.h>
 
-@interface WebCoreFullScreenPlaceholderView : NSView {
+WEBCORE_EXPORT @interface WebCoreFullScreenPlaceholderView : NSView {
     RetainPtr<NSView> _exitWarning;
     NSObject* _target;
     SEL _action;
index 601e348..9700173 100644 (file)
@@ -28,7 +28,7 @@
 
 #if ENABLE(FULLSCREEN_API) && !PLATFORM(IOS)
 
-@interface WebCoreFullScreenWindow : NSWindow
+WEBCORE_EXPORT @interface WebCoreFullScreenWindow : NSWindow
 @end
 
 #endif // ENABLE(FULLSCREEN_API)
index 09d0886..19e777c 100644 (file)
@@ -39,13 +39,13 @@ typedef struct NSString NSString;
 extern "C" {
 #endif
 
-BOOL stringIsCaseInsensitiveEqualToString(NSString *first, NSString *second);
-BOOL hasCaseInsensitiveSuffix(NSString *, NSString *suffix);
-BOOL hasCaseInsensitivePrefix(NSString *, NSString *prefix);
-BOOL hasCaseInsensitiveSubstring(NSString *, NSString *substring);
-NSString *filenameByFixingIllegalCharacters(NSString *);
+WEBCORE_EXPORT BOOL stringIsCaseInsensitiveEqualToString(NSString *first, NSString *second);
+WEBCORE_EXPORT BOOL hasCaseInsensitiveSuffix(NSString *, NSString *suffix);
+WEBCORE_EXPORT BOOL hasCaseInsensitivePrefix(NSString *, NSString *prefix);
+WEBCORE_EXPORT BOOL hasCaseInsensitiveSubstring(NSString *, NSString *substring);
+WEBCORE_EXPORT NSString *filenameByFixingIllegalCharacters(NSString *);
 #if !PLATFORM(IOS)
-CFStringEncoding stringEncodingForResource(Handle resource);
+WEBCORE_EXPORT CFStringEncoding stringEncodingForResource(Handle resource);
 #endif
 
 NSString *preferredBundleLocalizationName();
index 313d90e..256e618 100644 (file)
 extern "C" {
 #endif
 
-void WebCoreObjCFinalizeOnMainThread(Class cls);
+WEBCORE_EXPORT void WebCoreObjCFinalizeOnMainThread(Class cls);
 
 // The 'Class' that should be passed in here is the class of the
 // object that implements the dealloc method that this function is called from.
-bool WebCoreObjCScheduleDeallocateOnMainThread(Class cls, id object);
+WEBCORE_EXPORT bool WebCoreObjCScheduleDeallocateOnMainThread(Class cls, id);
 
 #ifdef __cplusplus
 }
index 8f62639..2c7703e 100644 (file)
@@ -28,7 +28,7 @@
 #import <wtf/Vector.h>
 
 // This interface exists so that third party products (like Silk) can patch in to an Obj-C method to manipulate WebKit's font caching/substitution.
-@interface WebFontCache : NSObject
+WEBCORE_EXPORT @interface WebFontCache : NSObject
 + (NSFont *)fontWithFamily:(NSString *)desiredFamily traits:(NSFontTraitMask)desiredTraits weight:(int)desiredWeight size:(float)size;
 + (void)getTraits:(Vector<unsigned>&)traitsMasks inFamily:(NSString *)desiredFamily;
 
index 9217546..b1235e2 100644 (file)
@@ -40,7 +40,7 @@ namespace WebCore {
 @class WebWindowFadeAnimation;
 @class CALayer;
 
-@interface WebVideoFullscreenController : NSWindowController {
+WEBCORE_EXPORT @interface WebVideoFullscreenController : NSWindowController {
 @private
     RefPtr<WebCore::HTMLMediaElement> _mediaElement; // (retain)
     id <WebVideoFullscreenControllerDelegate> _delegate; // (assign)
index 6b4c4ed..4eecc08 100644 (file)
@@ -25,7 +25,7 @@
 
 #import <Cocoa/Cocoa.h>
 
-@interface WebWindowScaleAnimation : NSAnimation {
+WEBCORE_EXPORT @interface WebWindowScaleAnimation : NSAnimation {
 @private
     NSRect _initialFrame, _finalFrame, _realFrame;
     NSWindow *_window; // (assign)
@@ -43,7 +43,7 @@
 @end
 
 
-@interface WebWindowFadeAnimation : NSAnimation {
+WEBCORE_EXPORT @interface WebWindowFadeAnimation : NSAnimation {
 @private
     CGFloat _initialAlpha, _finalAlpha;
     NSWindow *_window; // (assign)
index f945819..6b44d8e 100644 (file)
@@ -45,7 +45,7 @@ class ResourceHandleClient;
 class ResourceRequest;
 
 // BlobRegistryImpl is not thread-safe. It should only be called from main thread.
-class BlobRegistryImpl final : public BlobRegistry {
+class WEBCORE_EXPORT BlobRegistryImpl final : public BlobRegistry {
     WTF_MAKE_FAST_ALLOCATED;
 public:
     virtual ~BlobRegistryImpl();
index bd9acf8..65b4aef 100644 (file)
@@ -36,7 +36,7 @@ class CredentialStorage {
 public:
     // WebCore session credential storage.
     static void set(const Credential&, const ProtectionSpace&, const URL&);
-    static Credential get(const ProtectionSpace&);
+    WEBCORE_EXPORT static Credential get(const ProtectionSpace&);
     static void remove(const ProtectionSpace&);
 
     // OS persistent storage.
index 43eadc0..b7489d0 100644 (file)
@@ -41,10 +41,10 @@ struct Cookie;
 
 WEBCORE_EXPORT String cookiesForDOM(const NetworkStorageSession&, const URL& firstParty, const URL&);
 WEBCORE_EXPORT void setCookiesFromDOM(const NetworkStorageSession&, const URL& firstParty, const URL&, const String&);
-bool cookiesEnabled(const NetworkStorageSession&, const URL& firstParty, const URL&);
-String cookieRequestHeaderFieldValue(const NetworkStorageSession&, const URL& firstParty, const URL&);
-bool getRawCookies(const NetworkStorageSession&, const URL& firstParty, const URL&, Vector<Cookie>&);
-void deleteCookie(const NetworkStorageSession&, const URL&, const String&);
+WEBCORE_EXPORT bool cookiesEnabled(const NetworkStorageSession&, const URL& firstParty, const URL&);
+WEBCORE_EXPORT String cookieRequestHeaderFieldValue(const NetworkStorageSession&, const URL& firstParty, const URL&);
+WEBCORE_EXPORT bool getRawCookies(const NetworkStorageSession&, const URL& firstParty, const URL&, Vector<Cookie>&);
+WEBCORE_EXPORT void deleteCookie(const NetworkStorageSession&, const URL&, const String&);
 WEBCORE_EXPORT void getHostnamesWithCookies(const NetworkStorageSession&, HashSet<String>& hostnames);
 WEBCORE_EXPORT void deleteCookiesForHostname(const NetworkStorageSession&, const String& hostname);
 WEBCORE_EXPORT void deleteAllCookies(const NetworkStorageSession&);
index 7e27ef4..76fdbba 100644 (file)
@@ -72,7 +72,7 @@ WEBCORE_EXPORT Vector<ProxyServer> proxyServersForURL(const URL&, const Networki
 
 // Converts the given vector of proxy servers to a PAC string, as described in
 // http://web.archive.org/web/20060424005037/wp.netscape.com/eng/mozilla/2.0/relnotes/demo/proxy-live.html
-String toString(const Vector<ProxyServer>&);
+WEBCORE_EXPORT String toString(const Vector<ProxyServer>&);
     
 } // namespace WebCore
 
index e152584..84535f7 100644 (file)
@@ -60,7 +60,7 @@ public:
     // prepares, steps, and finalizes the query.
     // returns true if all 3 steps succeed with step() returning SQLITE_DONE
     // returns false otherwise  
-    bool executeCommand();
+    WEBCORE_EXPORT bool executeCommand();
     
     // prepares, steps, and finalizes.  
     // returns true is step() returns SQLITE_ROW
@@ -77,13 +77,13 @@ public:
     WEBCORE_EXPORT bool isColumnDeclaredAsBlob(int col);
     String getColumnName(int col);
     SQLValue getColumnValue(int col);
-    String getColumnText(int col);
+    WEBCORE_EXPORT String getColumnText(int col);
     double getColumnDouble(int col);
-    int getColumnInt(int col);
-    int64_t getColumnInt64(int col);
-    String getColumnBlobAsString(int col);
-    void getColumnBlobAsVector(int col, Vector<char>&);
-    void getColumnBlobAsVector(int col, Vector<uint8_t>&);
+    WEBCORE_EXPORT int getColumnInt(int col);
+    WEBCORE_EXPORT int64_t getColumnInt64(int col);
+    WEBCORE_EXPORT String getColumnBlobAsString(int col);
+    WEBCORE_EXPORT void getColumnBlobAsVector(int col, Vector<char>&);
+    WEBCORE_EXPORT void getColumnBlobAsVector(int col, Vector<uint8_t>&);
 
     bool returnTextResults(int col, Vector<String>&);
     bool returnIntResults(int col, Vector<int>&);
index 010d3d2..ca00137 100644 (file)
@@ -68,7 +68,7 @@ namespace WebCore {
             bool ignored;
             return decode(str, length, false, ignored);
         }
-        String decode(const char*, size_t length, bool stopOnError, bool& sawError) const;
+        WEBCORE_EXPORT String decode(const char*, size_t length, bool stopOnError, bool& sawError) const;
         CString encode(StringView, UnencodableHandling) const;
 
         UChar backslashAsCurrencySymbol() const;
index efc8471..72104ab 100644 (file)
@@ -50,11 +50,11 @@ public:
     typedef ListHashSet<RefPtr<Node>> NodeSet;
 
     HitTestResult();
-    explicit HitTestResult(const LayoutPoint&);
+    WEBCORE_EXPORT explicit HitTestResult(const LayoutPoint&);
     // Pass non-negative padding values to perform a rect-based hit test.
-    HitTestResult(const LayoutPoint& centerPoint, unsigned topPadding, unsigned rightPadding, unsigned bottomPadding, unsigned leftPadding);
+    WEBCORE_EXPORT HitTestResult(const LayoutPoint& centerPoint, unsigned topPadding, unsigned rightPadding, unsigned bottomPadding, unsigned leftPadding);
     explicit HitTestResult(const HitTestLocation&);
-    HitTestResult(const HitTestResult&);
+    WEBCORE_EXPORT HitTestResult(const HitTestResult&);
     WEBCORE_EXPORT ~HitTestResult();
     HitTestResult& operator=(const HitTestResult&);
 
index fffff72..f35b53c 100644 (file)
@@ -68,7 +68,7 @@ String quoteAndEscapeNonPrintables(const String&);
 
 WEBCORE_EXPORT String counterValueForElement(Element*);
 
-String markerTextForListItem(Element*);
+WEBCORE_EXPORT String markerTextForListItem(Element*);
 
 } // namespace WebCore
 
index fad703a..79140f5 100644 (file)
@@ -281,7 +281,7 @@ public:
 
     String getCurrentCursorInfo(ExceptionCode&);
 
-    WEBCORE_EXPORT String markerTextForListItem(Element*, ExceptionCode&);
+    String markerTextForListItem(Element*, ExceptionCode&);
 
     void forceReload(bool endToEnd);