Changeset 201673 in webkit
- Timestamp:
- Jun 3, 2016 5:56:57 PM (8 years ago)
- Location:
- trunk/Source
- Files:
-
- 55 edited
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WTF/ChangeLog
r201663 r201673 1 2016-06-03 Commit Queue <commit-queue@webkit.org> 2 3 Unreviewed, rolling out r201663. 4 https://bugs.webkit.org/show_bug.cgi?id=158374 5 6 Broke the Windows build (Requested by andersca on #webkit). 7 8 Reverted changeset: 9 10 "Rename NoncopyableFunction to Function" 11 https://bugs.webkit.org/show_bug.cgi?id=158354 12 http://trac.webkit.org/changeset/201663 13 1 14 2016-06-03 Anders Carlsson <andersca@apple.com> 2 15 -
trunk/Source/WTF/WTF.xcodeproj/project.pbxproj
r201663 r201673 119 119 8134013815B092FD001FF0B8 /* Base64.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8134013615B092FD001FF0B8 /* Base64.cpp */; }; 120 120 8134013915B092FD001FF0B8 /* Base64.h in Headers */ = {isa = PBXBuildFile; fileRef = 8134013715B092FD001FF0B8 /* Base64.h */; }; 121 83F2BADF1CF9524E003E99C3 /* Function.h in Headers */ = {isa = PBXBuildFile; fileRef = 83F2BADE1CF9524E003E99C3 /*Function.h */; };121 83F2BADF1CF9524E003E99C3 /* NoncopyableFunction.h in Headers */ = {isa = PBXBuildFile; fileRef = 83F2BADE1CF9524E003E99C3 /* NoncopyableFunction.h */; }; 122 122 83FBA93219DF459700F30ADB /* TypeCasts.h in Headers */ = {isa = PBXBuildFile; fileRef = 83FBA93119DF459700F30ADB /* TypeCasts.h */; }; 123 123 86F46F611A2840EE00CCBF22 /* RefCounter.h in Headers */ = {isa = PBXBuildFile; fileRef = 86F46F5F1A2840EE00CCBF22 /* RefCounter.h */; }; … … 448 448 8134013615B092FD001FF0B8 /* Base64.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Base64.cpp; sourceTree = "<group>"; }; 449 449 8134013715B092FD001FF0B8 /* Base64.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Base64.h; sourceTree = "<group>"; }; 450 83F2BADE1CF9524E003E99C3 /* Function.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path =Function.h; sourceTree = "<group>"; };450 83F2BADE1CF9524E003E99C3 /* NoncopyableFunction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoncopyableFunction.h; sourceTree = "<group>"; }; 451 451 83FBA93119DF459700F30ADB /* TypeCasts.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TypeCasts.h; sourceTree = "<group>"; }; 452 452 86F46F5F1A2840EE00CCBF22 /* RefCounter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RefCounter.h; sourceTree = "<group>"; }; … … 841 841 0F2B66A517B6B4F700A7AE3F /* FlipBytes.h */, 842 842 A8A472A6151A825A004123FF /* Forward.h */, 843 83F2BADE1CF9524E003E99C3 /* Function.h */,844 843 1A1D8B9D1731879800141DA4 /* FunctionDispatcher.cpp */, 845 844 1A1D8B9B173186CE00141DA4 /* FunctionDispatcher.h */, … … 888 887 0F0D85B317234CB100338210 /* NoLock.h */, 889 888 A8A472D0151A825B004123FF /* Noncopyable.h */, 889 83F2BADE1CF9524E003E99C3 /* NoncopyableFunction.h */, 890 890 A8A472D5151A825B004123FF /* NumberOfCores.cpp */, 891 891 A8A472D6151A825B004123FF /* NumberOfCores.h */, … … 1251 1251 A8A473DA151A825B004123FF /* HashTraits.h in Headers */, 1252 1252 A8A473DB151A825B004123FF /* HexNumber.h in Headers */, 1253 83F2BADF1CF9524E003E99C3 /* Function.h in Headers */,1253 83F2BADF1CF9524E003E99C3 /* NoncopyableFunction.h in Headers */, 1254 1254 2684D4361C000D400081D663 /* IndexSparseSet.h in Headers */, 1255 1255 A8A473DC151A825B004123FF /* InlineASM.h in Headers */, -
trunk/Source/WTF/wtf/CrossThreadTask.h
r201663 r201673 27 27 28 28 #include <wtf/CrossThreadCopier.h> 29 #include <wtf/ Function.h>29 #include <wtf/NoncopyableFunction.h> 30 30 #include <wtf/StdLibExtras.h> 31 31 … … 36 36 CrossThreadTask() = default; 37 37 38 CrossThreadTask( Function<void ()>&& taskFunction)38 CrossThreadTask(NoncopyableFunction<void ()>&& taskFunction) 39 39 : m_taskFunction(WTFMove(taskFunction)) 40 40 { … … 48 48 49 49 protected: 50 Function<void ()> m_taskFunction;50 NoncopyableFunction<void ()> m_taskFunction; 51 51 }; 52 52 -
trunk/Source/WTF/wtf/FunctionDispatcher.h
r201663 r201673 28 28 29 29 #include <functional> 30 #include <wtf/ Function.h>30 #include <wtf/NoncopyableFunction.h> 31 31 #include <wtf/ThreadSafeRefCounted.h> 32 32 … … 40 40 WTF_EXPORT_PRIVATE virtual ~FunctionDispatcher(); 41 41 42 virtual void dispatch( Function<void ()>&&) = 0;42 virtual void dispatch(NoncopyableFunction<void ()>&&) = 0; 43 43 44 44 protected: -
trunk/Source/WTF/wtf/MainThread.cpp
r201663 r201673 48 48 static StaticLock mainThreadFunctionQueueMutex; 49 49 50 static Deque< Function<void ()>>& functionQueue()51 { 52 static NeverDestroyed<Deque< Function<void ()>>> functionQueue;50 static Deque<NoncopyableFunction<void ()>>& functionQueue() 51 { 52 static NeverDestroyed<Deque<NoncopyableFunction<void ()>>> functionQueue; 53 53 return functionQueue; 54 54 } … … 121 121 auto startTime = std::chrono::steady_clock::now(); 122 122 123 Function<void ()> function;123 NoncopyableFunction<void ()> function; 124 124 125 125 while (true) { … … 145 145 } 146 146 147 void callOnMainThread( Function<void ()>&& function)147 void callOnMainThread(NoncopyableFunction<void ()>&& function) 148 148 { 149 149 ASSERT(function); -
trunk/Source/WTF/wtf/MainThread.h
r201663 r201673 33 33 #include <functional> 34 34 #include <stdint.h> 35 #include <wtf/ Function.h>35 #include <wtf/NoncopyableFunction.h> 36 36 37 37 namespace WTF { … … 42 42 WTF_EXPORT_PRIVATE void initializeMainThread(); 43 43 44 WTF_EXPORT_PRIVATE void callOnMainThread( Function<void ()>&&);44 WTF_EXPORT_PRIVATE void callOnMainThread(NoncopyableFunction<void ()>&&); 45 45 46 46 #if PLATFORM(COCOA) -
trunk/Source/WTF/wtf/NoncopyableFunction.h
r201672 r201673 31 31 namespace WTF { 32 32 33 template<typename> class Function;33 template<typename> class NoncopyableFunction; 34 34 35 35 template <typename Out, typename... In> 36 class Function<Out(In...)> {36 class NoncopyableFunction<Out(In...)> { 37 37 public: 38 Function() = default;38 NoncopyableFunction() = default; 39 39 40 40 template<typename CallableType, class = typename std::enable_if<std::is_rvalue_reference<CallableType&&>::value>::type> 41 Function(CallableType&& callable)41 NoncopyableFunction(CallableType&& callable) 42 42 : m_callableWrapper(std::make_unique<CallableWrapper<CallableType>>(WTFMove(callable))) 43 43 { … … 54 54 55 55 template<typename CallableType, class = typename std::enable_if<std::is_rvalue_reference<CallableType&&>::value>::type> 56 Function& operator=(CallableType&& callable)56 NoncopyableFunction& operator=(CallableType&& callable) 57 57 { 58 58 m_callableWrapper = std::make_unique<CallableWrapper<CallableType>>(WTFMove(callable)); … … 60 60 } 61 61 62 Function& operator=(std::nullptr_t)62 NoncopyableFunction& operator=(std::nullptr_t) 63 63 { 64 64 m_callableWrapper = nullptr; … … 97 97 } // namespace WTF 98 98 99 using WTF:: Function;99 using WTF::NoncopyableFunction; -
trunk/Source/WTF/wtf/RunLoop.cpp
r201663 r201673 92 92 size_t functionsToHandle = 0; 93 93 { 94 Function<void ()> function;94 NoncopyableFunction<void ()> function; 95 95 { 96 96 MutexLocker locker(m_functionQueueLock); … … 107 107 108 108 for (size_t functionsHandled = 1; functionsHandled < functionsToHandle; ++functionsHandled) { 109 Function<void ()> function;109 NoncopyableFunction<void ()> function; 110 110 { 111 111 MutexLocker locker(m_functionQueueLock); … … 124 124 } 125 125 126 void RunLoop::dispatch( Function<void ()>&& function)126 void RunLoop::dispatch(NoncopyableFunction<void ()>&& function) 127 127 { 128 128 { -
trunk/Source/WTF/wtf/RunLoop.h
r201663 r201673 60 60 ~RunLoop(); 61 61 62 void dispatch( Function<void ()>&&) override;62 void dispatch(NoncopyableFunction<void ()>&&) override; 63 63 64 64 WTF_EXPORT_PRIVATE static void run(); … … 80 80 81 81 #if USE(GLIB_EVENT_LOOP) || USE(GENERIC_EVENT_LOOP) 82 WTF_EXPORT_PRIVATE void dispatchAfter(std::chrono::nanoseconds, Function<void ()>&&);82 WTF_EXPORT_PRIVATE void dispatchAfter(std::chrono::nanoseconds, NoncopyableFunction<void ()>&&); 83 83 #endif 84 84 … … 156 156 157 157 Mutex m_functionQueueLock; 158 Deque< Function<void ()>> m_functionQueue;158 Deque<NoncopyableFunction<void ()>> m_functionQueue; 159 159 160 160 #if USE(WINDOWS_EVENT_LOOP) -
trunk/Source/WTF/wtf/WorkQueue.h
r201663 r201673 73 73 virtual ~WorkQueue(); 74 74 75 WTF_EXPORT_PRIVATE void dispatch( Function<void ()>&&) override;76 WTF_EXPORT_PRIVATE void dispatchAfter(std::chrono::nanoseconds, Function<void ()>&&);75 WTF_EXPORT_PRIVATE void dispatch(NoncopyableFunction<void ()>&&) override; 76 WTF_EXPORT_PRIVATE void dispatchAfter(std::chrono::nanoseconds, NoncopyableFunction<void ()>&&); 77 77 78 78 WTF_EXPORT_PRIVATE static void concurrentApply(size_t iterations, const std::function<void (size_t index)>&); -
trunk/Source/WTF/wtf/cocoa/WorkQueueCocoa.cpp
r201663 r201673 29 29 namespace WTF { 30 30 31 void WorkQueue::dispatch( Function<void ()>&& function)31 void WorkQueue::dispatch(NoncopyableFunction<void ()>&& function) 32 32 { 33 33 ref(); 34 auto* functionPtr = new Function<void ()>(WTFMove(function));34 auto* functionPtr = new NoncopyableFunction<void ()>(WTFMove(function)); 35 35 dispatch_async(m_dispatchQueue, ^{ 36 36 (*functionPtr)(); … … 40 40 } 41 41 42 void WorkQueue::dispatchAfter(std::chrono::nanoseconds duration, Function<void ()>&& function)42 void WorkQueue::dispatchAfter(std::chrono::nanoseconds duration, NoncopyableFunction<void ()>&& function) 43 43 { 44 44 ref(); 45 auto* functionPtr = new Function<void ()>(WTFMove(function));45 auto* functionPtr = new NoncopyableFunction<void ()>(WTFMove(function)); 46 46 dispatch_after(dispatch_time(DISPATCH_TIME_NOW, duration.count()), m_dispatchQueue, ^{ 47 47 (*functionPtr)(); -
trunk/Source/WTF/wtf/efl/DispatchQueueWorkItemEfl.h
r201663 r201673 35 35 class WorkItem { 36 36 public: 37 WorkItem(Ref<WorkQueue>&& workQueue, Function<void ()>&& function)37 WorkItem(Ref<WorkQueue>&& workQueue, NoncopyableFunction<void ()>&& function) 38 38 : m_workQueue(WTFMove(workQueue)) 39 39 , m_function(WTFMove(function)) … … 45 45 private: 46 46 Ref<WorkQueue> m_workQueue; 47 Function<void ()> m_function;47 NoncopyableFunction<void ()> m_function; 48 48 }; 49 49 50 50 class TimerWorkItem : public WorkItem { 51 51 public: 52 static std::unique_ptr<TimerWorkItem> create(Ref<WorkQueue>&& workQueue, Function<void ()>&& function, std::chrono::nanoseconds delayNanoSeconds)52 static std::unique_ptr<TimerWorkItem> create(Ref<WorkQueue>&& workQueue, NoncopyableFunction<void ()>&& function, std::chrono::nanoseconds delayNanoSeconds) 53 53 { 54 54 ASSERT(delayNanoSeconds.count() >= 0); … … 59 59 60 60 protected: 61 TimerWorkItem(Ref<WorkQueue>&& workQueue, Function<void ()>&& function, double expirationTimeNanoSeconds)61 TimerWorkItem(Ref<WorkQueue>&& workQueue, NoncopyableFunction<void ()>&& function, double expirationTimeNanoSeconds) 62 62 : WorkItem(WTFMove(workQueue), WTFMove(function)) 63 63 , m_expirationTimeNanoSeconds(expirationTimeNanoSeconds) -
trunk/Source/WTF/wtf/efl/WorkQueueEfl.cpp
r201663 r201673 55 55 } 56 56 57 void WorkQueue::dispatch( Function<void ()>&& function)57 void WorkQueue::dispatch(NoncopyableFunction<void ()>&& function) 58 58 { 59 59 if (!m_dispatchQueue) … … 63 63 } 64 64 65 void WorkQueue::dispatchAfter(std::chrono::nanoseconds duration, Function<void ()>&& function)65 void WorkQueue::dispatchAfter(std::chrono::nanoseconds duration, NoncopyableFunction<void ()>&& function) 66 66 { 67 67 if (!m_dispatchQueue) -
trunk/Source/WTF/wtf/generic/RunLoopGeneric.cpp
r201663 r201673 33 33 WTF_MAKE_NONCOPYABLE(ScheduledTask); 34 34 public: 35 static RefPtr<ScheduledTask> create( Function<void ()>&& function, double interval, bool repeating)35 static RefPtr<ScheduledTask> create(NoncopyableFunction<void ()>&& function, double interval, bool repeating) 36 36 { 37 37 return adoptRef(new ScheduledTask(WTFMove(function), interval, repeating)); 38 38 } 39 39 40 ScheduledTask( Function<void ()>&& function, double interval, bool repeating)40 ScheduledTask(NoncopyableFunction<void ()>&& function, double interval, bool repeating) 41 41 : m_function(WTFMove(function)) 42 42 , m_fireInterval(std::chrono::duration_cast<std::chrono::microseconds>(std::chrono::duration<double>(interval))) … … 91 91 92 92 private: 93 Function<void ()> m_function;93 NoncopyableFunction<void ()> m_function; 94 94 Condition::Clock::time_point m_scheduledTimePoint; 95 95 std::chrono::microseconds m_fireInterval; … … 238 238 } 239 239 240 void RunLoop::dispatchAfter(std::chrono::nanoseconds delay, Function<void ()>&& function)240 void RunLoop::dispatchAfter(std::chrono::nanoseconds delay, NoncopyableFunction<void ()>&& function) 241 241 { 242 242 LockHolder locker(m_loopLock); -
trunk/Source/WTF/wtf/generic/WorkQueueGeneric.cpp
r201663 r201673 82 82 } 83 83 84 void WorkQueue::dispatch( Function<void ()>&& function)84 void WorkQueue::dispatch(NoncopyableFunction<void ()>&& function) 85 85 { 86 86 RefPtr<WorkQueue> protect(this); … … 90 90 } 91 91 92 void WorkQueue::dispatchAfter(std::chrono::nanoseconds delay, Function<void ()>&& function)92 void WorkQueue::dispatchAfter(std::chrono::nanoseconds delay, NoncopyableFunction<void ()>&& function) 93 93 { 94 94 RefPtr<WorkQueue> protect(this); -
trunk/Source/WTF/wtf/glib/RunLoopGLib.cpp
r201663 r201673 125 125 WTF_MAKE_FAST_ALLOCATED; 126 126 public: 127 DispatchAfterContext( Function<void ()>&& function)127 DispatchAfterContext(NoncopyableFunction<void ()>&& function) 128 128 : m_function(WTFMove(function)) 129 129 { … … 136 136 137 137 private: 138 Function<void ()> m_function;138 NoncopyableFunction<void ()> m_function; 139 139 }; 140 140 141 void RunLoop::dispatchAfter(std::chrono::nanoseconds duration, Function<void ()>&& function)141 void RunLoop::dispatchAfter(std::chrono::nanoseconds duration, NoncopyableFunction<void ()>&& function) 142 142 { 143 143 GRefPtr<GSource> source = adoptGRef(g_timeout_source_new(std::chrono::duration_cast<std::chrono::milliseconds>(duration).count())); -
trunk/Source/WTF/wtf/win/WorkItemWin.cpp
r201663 r201673 33 33 namespace WTF { 34 34 35 WorkItemWin::WorkItemWin( Function<void ()>&& function, WorkQueue* queue)35 WorkItemWin::WorkItemWin(NoncopyableFunction<void ()>&& function, WorkQueue* queue) 36 36 : m_function(WTFMove(function)) 37 37 , m_queue(queue) … … 39 39 } 40 40 41 RefPtr<WorkItemWin> WorkItemWin::create( Function<void ()>&& function, WorkQueue* queue)41 RefPtr<WorkItemWin> WorkItemWin::create(NoncopyableFunction<void ()>&& function, WorkQueue* queue) 42 42 { 43 43 return adoptRef(new WorkItemWin(WTFMove(function), queue)); … … 48 48 } 49 49 50 HandleWorkItem::HandleWorkItem(HANDLE handle, Function<void ()>&& function, WorkQueue* queue)50 HandleWorkItem::HandleWorkItem(HANDLE handle, NoncopyableFunction<void ()>&& function, WorkQueue* queue) 51 51 : WorkItemWin(WTFMove(function), queue) 52 52 , m_handle(handle) … … 56 56 } 57 57 58 RefPtr<HandleWorkItem> HandleWorkItem::createByAdoptingHandle(HANDLE handle, Function<void ()>&& function, WorkQueue* queue)58 RefPtr<HandleWorkItem> HandleWorkItem::createByAdoptingHandle(HANDLE handle, NoncopyableFunction<void ()>&& function, WorkQueue* queue) 59 59 { 60 60 return adoptRef(new HandleWorkItem(handle, WTFMove(function), queue)); -
trunk/Source/WTF/wtf/win/WorkItemWin.h
r201663 r201673 40 40 class WorkItemWin : public ThreadSafeRefCounted<WorkItemWin> { 41 41 public: 42 static RefPtr<WorkItemWin> create( Function<void ()>&&, WorkQueue*);42 static RefPtr<WorkItemWin> create(NoncopyableFunction<void ()>&&, WorkQueue*); 43 43 virtual ~WorkItemWin(); 44 44 45 Function<void ()>& function() { return m_function; }45 NoncopyableFunction<void ()>& function() { return m_function; } 46 46 WorkQueue* queue() const { return m_queue.get(); } 47 47 48 48 protected: 49 WorkItemWin( Function<void ()>&&, WorkQueue*);49 WorkItemWin(NoncopyableFunction<void ()>&&, WorkQueue*); 50 50 51 51 private: 52 Function<void ()> m_function;52 NoncopyableFunction<void ()> m_function; 53 53 RefPtr<WorkQueue> m_queue; 54 54 }; … … 56 56 class HandleWorkItem : public WorkItemWin { 57 57 public: 58 static RefPtr<HandleWorkItem> createByAdoptingHandle(HANDLE, Function<void ()>&&, WorkQueue*);58 static RefPtr<HandleWorkItem> createByAdoptingHandle(HANDLE, NoncopyableFunction<void ()>&&, WorkQueue*); 59 59 virtual ~HandleWorkItem(); 60 60 … … 63 63 64 64 private: 65 HandleWorkItem(HANDLE, Function<void ()>&&, WorkQueue*);65 HandleWorkItem(HANDLE, NoncopyableFunction<void ()>&&, WorkQueue*); 66 66 67 67 HANDLE m_handle; -
trunk/Source/WTF/wtf/win/WorkQueueWin.cpp
r201663 r201673 130 130 } 131 131 132 void WorkQueue::dispatch( Function<void ()>&& function)132 void WorkQueue::dispatch(NoncopyableFunction<void ()>&& function) 133 133 { 134 134 MutexLocker locker(m_workItemQueueLock); … … 150 150 151 151 WorkQueue* queue; 152 Function<void ()> function;152 NoncopyableFunction<void ()> function; 153 153 Mutex timerMutex; 154 154 HANDLE timer; … … 181 181 } 182 182 183 void WorkQueue::dispatchAfter(std::chrono::nanoseconds duration, Function<void ()>&& function)183 void WorkQueue::dispatchAfter(std::chrono::nanoseconds duration, NoncopyableFunction<void ()>&& function) 184 184 { 185 185 ASSERT(m_timerQueue); -
trunk/Source/WebCore/ChangeLog
r201667 r201673 1 2016-06-03 Commit Queue <commit-queue@webkit.org> 2 3 Unreviewed, rolling out r201663. 4 https://bugs.webkit.org/show_bug.cgi?id=158374 5 6 Broke the Windows build (Requested by andersca on #webkit). 7 8 Reverted changeset: 9 10 "Rename NoncopyableFunction to Function" 11 https://bugs.webkit.org/show_bug.cgi?id=158354 12 http://trac.webkit.org/changeset/201663 13 1 14 2016-06-03 Ryosuke Niwa <rniwa@webkit.org> 2 15 -
trunk/Source/WebCore/Modules/mediastream/MediaEndpointPeerConnection.cpp
r201663 r201673 96 96 } 97 97 98 void MediaEndpointPeerConnection::runTask( Function<void ()>&& task)98 void MediaEndpointPeerConnection::runTask(NoncopyableFunction<void ()>&& task) 99 99 { 100 100 if (m_dtlsFingerprint.isNull()) { -
trunk/Source/WebCore/Modules/mediastream/MediaEndpointPeerConnection.h
r201663 r201673 38 38 #include "PeerConnectionBackend.h" 39 39 #include "RTCSessionDescription.h" 40 #include <wtf/ Function.h>40 #include <wtf/NoncopyableFunction.h> 41 41 #include <wtf/RefPtr.h> 42 42 … … 80 80 81 81 private: 82 void runTask( Function<void ()>&&);82 void runTask(NoncopyableFunction<void ()>&&); 83 83 void startRunningTasks(); 84 84 … … 94 94 std::unique_ptr<MediaEndpoint> m_mediaEndpoint; 95 95 96 Function<void ()> m_initialDeferredTask;96 NoncopyableFunction<void ()> m_initialDeferredTask; 97 97 98 98 std::unique_ptr<SDPProcessor> m_sdpProcessor; -
trunk/Source/WebCore/Modules/webaudio/AudioDestinationNode.h
r201663 r201673 31 31 #include "AudioNode.h" 32 32 #include "AudioSourceProvider.h" 33 #include <wtf/ Function.h>33 #include <wtf/NoncopyableFunction.h> 34 34 35 35 namespace WebCore { … … 60 60 61 61 virtual void startRendering() = 0; 62 virtual void resume( Function<void ()>&&) { }63 virtual void suspend( Function<void ()>&&) { }64 virtual void close( Function<void ()>&&) { }62 virtual void resume(NoncopyableFunction<void ()>&&) { } 63 virtual void suspend(NoncopyableFunction<void ()>&&) { } 64 virtual void close(NoncopyableFunction<void ()>&&) { } 65 65 66 66 virtual bool isPlaying() { return false; } -
trunk/Source/WebCore/Modules/webaudio/DefaultAudioDestinationNode.cpp
r201663 r201673 107 107 } 108 108 109 void DefaultAudioDestinationNode::resume( Function<void ()>&& function)109 void DefaultAudioDestinationNode::resume(NoncopyableFunction<void ()>&& function) 110 110 { 111 111 ASSERT(isInitialized()); … … 116 116 } 117 117 118 void DefaultAudioDestinationNode::suspend( Function<void ()>&& function)118 void DefaultAudioDestinationNode::suspend(NoncopyableFunction<void ()>&& function) 119 119 { 120 120 ASSERT(isInitialized()); … … 125 125 } 126 126 127 void DefaultAudioDestinationNode::close( Function<void()>&& function)127 void DefaultAudioDestinationNode::close(NoncopyableFunction<void()>&& function) 128 128 { 129 129 ASSERT(isInitialized()); -
trunk/Source/WebCore/Modules/webaudio/DefaultAudioDestinationNode.h
r201663 r201673 51 51 void enableInput(const String& inputDeviceId) override; 52 52 void startRendering() override; 53 void resume( Function<void ()>&&) override;54 void suspend( Function<void ()>&&) override;55 void close( Function<void ()>&&) override;53 void resume(NoncopyableFunction<void ()>&&) override; 54 void suspend(NoncopyableFunction<void ()>&&) override; 55 void close(NoncopyableFunction<void ()>&&) override; 56 56 unsigned long maxChannelCount() const override; 57 57 bool isPlaying() override; -
trunk/Source/WebCore/dom/ActiveDOMCallbackMicrotask.cpp
r201663 r201673 29 29 namespace WebCore { 30 30 31 ActiveDOMCallbackMicrotask::ActiveDOMCallbackMicrotask(MicrotaskQueue& queue, ScriptExecutionContext& scriptExecutionContext, Function<void()>&& task)31 ActiveDOMCallbackMicrotask::ActiveDOMCallbackMicrotask(MicrotaskQueue& queue, ScriptExecutionContext& scriptExecutionContext, NoncopyableFunction<void()>&& task) 32 32 : ActiveDOMCallback(&scriptExecutionContext) 33 33 , m_queue(queue) -
trunk/Source/WebCore/dom/ActiveDOMCallbackMicrotask.h
r201663 r201673 28 28 #include "ActiveDOMCallback.h" 29 29 #include "Microtasks.h" 30 #include <wtf/ Function.h>30 #include <wtf/NoncopyableFunction.h> 31 31 32 32 namespace WebCore { … … 35 35 WTF_MAKE_FAST_ALLOCATED; 36 36 public: 37 WEBCORE_EXPORT ActiveDOMCallbackMicrotask(MicrotaskQueue&, ScriptExecutionContext&, Function<void()>&&);37 WEBCORE_EXPORT ActiveDOMCallbackMicrotask(MicrotaskQueue&, ScriptExecutionContext&, NoncopyableFunction<void()>&&); 38 38 WEBCORE_EXPORT virtual ~ActiveDOMCallbackMicrotask(); 39 39 … … 47 47 // queue. 48 48 MicrotaskQueue& m_queue; 49 Function<void()> m_task;49 NoncopyableFunction<void()> m_task; 50 50 }; 51 51 -
trunk/Source/WebCore/dom/ScriptExecutionContext.h
r201663 r201673 36 36 #include <wtf/CrossThreadTask.h> 37 37 #include <wtf/HashSet.h> 38 #include <wtf/ Function.h>38 #include <wtf/NoncopyableFunction.h> 39 39 40 40 namespace JSC { … … 134 134 enum CleanupTaskTag { CleanupTask }; 135 135 136 template<typename T, typename = typename std::enable_if<!std::is_base_of<Task, T>::value && std::is_convertible<T, Function<void (ScriptExecutionContext&)>>::value>::type>136 template<typename T, typename = typename std::enable_if<!std::is_base_of<Task, T>::value && std::is_convertible<T, NoncopyableFunction<void (ScriptExecutionContext&)>>::value>::type> 137 137 Task(T task) 138 138 : m_task(WTFMove(task)) … … 141 141 } 142 142 143 Task( Function<void ()>&& task)143 Task(NoncopyableFunction<void ()>&& task) 144 144 : m_task([task = WTFMove(task)](ScriptExecutionContext&) { task(); }) 145 145 , m_isCleanupTask(false) … … 147 147 } 148 148 149 template<typename T, typename = typename std::enable_if<std::is_convertible<T, Function<void (ScriptExecutionContext&)>>::value>::type>149 template<typename T, typename = typename std::enable_if<std::is_convertible<T, NoncopyableFunction<void (ScriptExecutionContext&)>>::value>::type> 150 150 Task(CleanupTaskTag, T task) 151 151 : m_task(WTFMove(task)) … … 164 164 165 165 protected: 166 Function<void (ScriptExecutionContext&)> m_task;166 NoncopyableFunction<void (ScriptExecutionContext&)> m_task; 167 167 bool m_isCleanupTask; 168 168 }; -
trunk/Source/WebCore/fileapi/AsyncFileStream.cpp
r201663 r201673 40 40 #include <wtf/MessageQueue.h> 41 41 #include <wtf/NeverDestroyed.h> 42 #include <wtf/ Function.h>42 #include <wtf/NoncopyableFunction.h> 43 43 44 44 namespace WebCore { … … 65 65 } 66 66 67 static void callOnFileThread( Function<void ()>&& function)67 static void callOnFileThread(NoncopyableFunction<void ()>&& function) 68 68 { 69 69 ASSERT(isMainThread()); 70 70 ASSERT(function); 71 71 72 static NeverDestroyed<MessageQueue< Function<void ()>>> queue;72 static NeverDestroyed<MessageQueue<NoncopyableFunction<void ()>>> queue; 73 73 74 74 static std::once_flag createFileThreadOnce; … … 91 91 }); 92 92 93 queue.get().append(std::make_unique< Function<void ()>>(WTFMove(function)));93 queue.get().append(std::make_unique<NoncopyableFunction<void ()>>(WTFMove(function))); 94 94 } 95 95 … … 115 115 } 116 116 117 void AsyncFileStream::perform( Function<std::function<void(FileStreamClient&)>(FileStream&)>&& operation)117 void AsyncFileStream::perform(NoncopyableFunction<std::function<void(FileStreamClient&)>(FileStream&)>&& operation) 118 118 { 119 119 auto& internals = *m_internals; -
trunk/Source/WebCore/fileapi/AsyncFileStream.h
r201663 r201673 35 35 #include <functional> 36 36 #include <wtf/Forward.h> 37 #include <wtf/ Function.h>37 #include <wtf/NoncopyableFunction.h> 38 38 39 39 namespace WebCore { … … 58 58 private: 59 59 void start(); 60 void perform( Function<std::function<void(FileStreamClient&)>(FileStream&)>&&);60 void perform(NoncopyableFunction<std::function<void(FileStreamClient&)>(FileStream&)>&&); 61 61 62 62 struct Internals; -
trunk/Source/WebCore/page/FrameView.cpp
r201663 r201673 3134 3134 } 3135 3135 3136 void FrameView::queuePostLayoutCallback( Function<void()>&& callback)3136 void FrameView::queuePostLayoutCallback(NoncopyableFunction<void()>&& callback) 3137 3137 { 3138 3138 m_postLayoutCallbackQueue.append(WTFMove(callback)); … … 3147 3147 return; 3148 3148 3149 Vector< Function<void()>> queue = WTFMove(m_postLayoutCallbackQueue);3149 Vector<NoncopyableFunction<void()>> queue = WTFMove(m_postLayoutCallbackQueue); 3150 3150 for (auto& task : queue) 3151 3151 task(); -
trunk/Source/WebCore/page/FrameView.h
r201663 r201673 38 38 #include <wtf/HashSet.h> 39 39 #include <wtf/ListHashSet.h> 40 #include <wtf/ Function.h>40 #include <wtf/NoncopyableFunction.h> 41 41 #include <wtf/text/WTFString.h> 42 42 … … 112 112 void scheduleRelayoutOfSubtree(RenderElement&); 113 113 void unscheduleRelayout(); 114 void queuePostLayoutCallback( Function<void()>&&);114 void queuePostLayoutCallback(NoncopyableFunction<void()>&&); 115 115 bool layoutPending() const; 116 116 bool isInLayout() const { return m_layoutPhase != OutsideLayout; } … … 829 829 830 830 IntRect* m_cachedWindowClipRect { nullptr }; 831 Vector< Function<void()>> m_postLayoutCallbackQueue;831 Vector<NoncopyableFunction<void()>> m_postLayoutCallbackQueue; 832 832 }; 833 833 -
trunk/Source/WebCore/page/scrolling/ScrollingThread.cpp
r201663 r201673 46 46 } 47 47 48 void ScrollingThread::dispatch( Function<void ()>&& function)48 void ScrollingThread::dispatch(NoncopyableFunction<void ()>&& function) 49 49 { 50 50 auto& scrollingThread = ScrollingThread::singleton(); … … 59 59 } 60 60 61 void ScrollingThread::dispatchBarrier( Function<void ()>&& function)61 void ScrollingThread::dispatchBarrier(NoncopyableFunction<void ()>&& function) 62 62 { 63 63 dispatch([function = WTFMove(function)]() mutable { … … 105 105 ASSERT(isCurrentThread()); 106 106 107 Vector< Function<void ()>> functions;107 Vector<NoncopyableFunction<void ()>> functions; 108 108 109 109 { -
trunk/Source/WebCore/page/scrolling/ScrollingThread.h
r201663 r201673 34 34 #include <wtf/Lock.h> 35 35 #include <wtf/Noncopyable.h> 36 #include <wtf/ Function.h>36 #include <wtf/NoncopyableFunction.h> 37 37 #include <wtf/Threading.h> 38 38 #include <wtf/Vector.h> … … 49 49 public: 50 50 static bool isCurrentThread(); 51 WEBCORE_EXPORT static void dispatch( Function<void ()>&&);51 WEBCORE_EXPORT static void dispatch(NoncopyableFunction<void ()>&&); 52 52 53 53 // Will dispatch the given function on the main thread once all pending functions 54 54 // on the scrolling thread have finished executing. Used for synchronization purposes. 55 WEBCORE_EXPORT static void dispatchBarrier( Function<void ()>&&);55 WEBCORE_EXPORT static void dispatchBarrier(NoncopyableFunction<void ()>&&); 56 56 57 57 private: … … 81 81 82 82 Lock m_functionsMutex; 83 Vector< Function<void ()>> m_functions;83 Vector<NoncopyableFunction<void ()>> m_functions; 84 84 85 85 #if PLATFORM(COCOA) -
trunk/Source/WebCore/platform/GenericTaskQueue.cpp
r201663 r201673 37 37 } 38 38 39 void TaskDispatcher<Timer>::postTask( Function<void()>&& function)39 void TaskDispatcher<Timer>::postTask(NoncopyableFunction<void()>&& function) 40 40 { 41 41 m_pendingTasks.append(WTFMove(function)); -
trunk/Source/WebCore/platform/GenericTaskQueue.h
r201663 r201673 28 28 #include "Timer.h" 29 29 #include <wtf/Deque.h> 30 #include <wtf/ Function.h>30 #include <wtf/NoncopyableFunction.h> 31 31 #include <wtf/WeakPtr.h> 32 32 … … 41 41 } 42 42 43 void postTask( Function<void()>&& f)43 void postTask(NoncopyableFunction<void()>&& f) 44 44 { 45 45 m_context.postTask(WTFMove(f)); … … 54 54 public: 55 55 TaskDispatcher(); 56 void postTask( Function<void()>&&);56 void postTask(NoncopyableFunction<void()>&&); 57 57 58 58 private: … … 64 64 65 65 WeakPtrFactory<TaskDispatcher> m_weakPtrFactory; 66 Deque< Function<void()>> m_pendingTasks;66 Deque<NoncopyableFunction<void()>> m_pendingTasks; 67 67 }; 68 68 … … 82 82 } 83 83 84 typedef Function<void()> TaskFunction;84 typedef NoncopyableFunction<void()> TaskFunction; 85 85 86 86 void enqueueTask(TaskFunction&& task) -
trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h
r201663 r201673 32 32 #include "MediaStreamPrivate.h" 33 33 #include <wtf/MediaTime.h> 34 #include <wtf/ Function.h>34 #include <wtf/NoncopyableFunction.h> 35 35 #include <wtf/Vector.h> 36 36 #include <wtf/WeakPtr.h> … … 144 144 void renderingModeChanged(); 145 145 146 void scheduleDeferredTask( Function<void ()>&&);146 void scheduleDeferredTask(NoncopyableFunction<void ()>&&); 147 147 148 148 enum DisplayMode { -
trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm
r201663 r201673 625 625 } 626 626 627 void MediaPlayerPrivateMediaStreamAVFObjC::scheduleDeferredTask( Function<void ()>&& function)627 void MediaPlayerPrivateMediaStreamAVFObjC::scheduleDeferredTask(NoncopyableFunction<void ()>&& function) 628 628 { 629 629 ASSERT(function); -
trunk/Source/WebCore/platform/mediastream/MediaStreamPrivate.cpp
r201663 r201673 300 300 } 301 301 302 void MediaStreamPrivate::scheduleDeferredTask( Function<void ()>&& function)302 void MediaStreamPrivate::scheduleDeferredTask(NoncopyableFunction<void ()>&& function) 303 303 { 304 304 ASSERT(function); -
trunk/Source/WebCore/platform/mediastream/MediaStreamPrivate.h
r201663 r201673 42 42 #include <wtf/HashMap.h> 43 43 #include <wtf/MediaTime.h> 44 #include <wtf/ Function.h>44 #include <wtf/NoncopyableFunction.h> 45 45 #include <wtf/RefCounted.h> 46 46 #include <wtf/RefPtr.h> … … 113 113 void updateActiveVideoTrack(); 114 114 115 void scheduleDeferredTask( Function<void ()>&&);115 void scheduleDeferredTask(NoncopyableFunction<void ()>&&); 116 116 117 117 WeakPtrFactory<MediaStreamPrivate> m_weakPtrFactory; -
trunk/Source/WebCore/platform/mediastream/mac/AVMediaCaptureSource.h
r201663 r201673 32 32 #include "RealtimeMediaSource.h" 33 33 #include "Timer.h" 34 #include <wtf/ Function.h>34 #include <wtf/NoncopyableFunction.h> 35 35 #include <wtf/RetainPtr.h> 36 36 #include <wtf/WeakPtr.h> … … 87 87 void setAudioSampleBufferDelegate(AVCaptureAudioDataOutput*); 88 88 89 void scheduleDeferredTask( Function<void ()>&&);89 void scheduleDeferredTask(NoncopyableFunction<void ()>&&); 90 90 91 91 private: -
trunk/Source/WebCore/platform/mediastream/mac/AVMediaCaptureSource.mm
r201663 r201673 241 241 } 242 242 243 void AVMediaCaptureSource::scheduleDeferredTask( Function<void ()>&& function)243 void AVMediaCaptureSource::scheduleDeferredTask(NoncopyableFunction<void ()>&& function) 244 244 { 245 245 ASSERT(function); -
trunk/Source/WebCore/style/StyleTreeResolver.cpp
r201663 r201673 522 522 } 523 523 524 static Vector< Function<void ()>>& postResolutionCallbackQueue()525 { 526 static NeverDestroyed<Vector< Function<void ()>>> vector;524 static Vector<NoncopyableFunction<void ()>>& postResolutionCallbackQueue() 525 { 526 static NeverDestroyed<Vector<NoncopyableFunction<void ()>>> vector; 527 527 return vector; 528 528 } 529 529 530 void queuePostResolutionCallback( Function<void ()>&& callback)530 void queuePostResolutionCallback(NoncopyableFunction<void ()>&& callback) 531 531 { 532 532 postResolutionCallbackQueue().append(WTFMove(callback)); -
trunk/Source/WebCore/style/StyleTreeResolver.h
r201663 r201673 35 35 #include <functional> 36 36 #include <wtf/HashMap.h> 37 #include <wtf/ Function.h>37 #include <wtf/NoncopyableFunction.h> 38 38 #include <wtf/RefPtr.h> 39 39 … … 111 111 }; 112 112 113 void queuePostResolutionCallback( Function<void ()>&&);113 void queuePostResolutionCallback(NoncopyableFunction<void ()>&&); 114 114 bool postResolutionCallbacksAreSuspended(); 115 115 -
trunk/Source/WebKit/ChangeLog
r201663 r201673 1 2016-06-03 Commit Queue <commit-queue@webkit.org> 2 3 Unreviewed, rolling out r201663. 4 https://bugs.webkit.org/show_bug.cgi?id=158374 5 6 Broke the Windows build (Requested by andersca on #webkit). 7 8 Reverted changeset: 9 10 "Rename NoncopyableFunction to Function" 11 https://bugs.webkit.org/show_bug.cgi?id=158354 12 http://trac.webkit.org/changeset/201663 13 1 14 2016-06-03 Anders Carlsson <andersca@apple.com> 2 15 -
trunk/Source/WebKit/Storage/StorageSyncManager.cpp
r201663 r201673 64 64 } 65 65 66 void StorageSyncManager::dispatch( Function<void ()>&& function)66 void StorageSyncManager::dispatch(NoncopyableFunction<void ()>&& function) 67 67 { 68 68 ASSERT(isMainThread()); -
trunk/Source/WebKit/Storage/StorageSyncManager.h
r201663 r201673 29 29 #include <functional> 30 30 #include <wtf/Forward.h> 31 #include <wtf/ Function.h>31 #include <wtf/NoncopyableFunction.h> 32 32 #include <wtf/PassRefPtr.h> 33 33 #include <wtf/RefCounted.h> … … 44 44 ~StorageSyncManager(); 45 45 46 void dispatch( Function<void ()>&&);46 void dispatch(NoncopyableFunction<void ()>&&); 47 47 void close(); 48 48 -
trunk/Source/WebKit/Storage/StorageThread.cpp
r201663 r201673 75 75 } 76 76 77 void StorageThread::dispatch( Function<void ()>&& function)77 void StorageThread::dispatch(NoncopyableFunction<void ()>&& function) 78 78 { 79 79 ASSERT(isMainThread()); 80 80 ASSERT(!m_queue.killed() && m_threadID); 81 m_queue.append(std::make_unique< Function<void ()>>(WTFMove(function)));81 m_queue.append(std::make_unique<NoncopyableFunction<void ()>>(WTFMove(function))); 82 82 } 83 83 … … 91 91 return; 92 92 93 m_queue.append(std::make_unique< Function<void ()>>([this] {93 m_queue.append(std::make_unique<NoncopyableFunction<void ()>>([this] { 94 94 performTerminate(); 95 95 })); -
trunk/Source/WebKit/Storage/StorageThread.h
r201663 r201673 27 27 #define StorageThread_h 28 28 29 #include < wtf/Function.h>29 #include <functional> 30 30 #include <wtf/HashSet.h> 31 31 #include <wtf/MessageQueue.h> 32 #include <wtf/NoncopyableFunction.h> 32 33 #include <wtf/Threading.h> 33 34 … … 46 47 void terminate(); 47 48 48 void dispatch( Function<void ()>&&);49 void dispatch(NoncopyableFunction<void ()>&&); 49 50 50 51 static void releaseFastMallocFreeMemoryInAllThreads(); … … 59 60 60 61 ThreadIdentifier m_threadID; 61 MessageQueue< Function<void ()>> m_queue;62 MessageQueue<NoncopyableFunction<void ()>> m_queue; 62 63 }; 63 64 -
trunk/Source/WebKit2/ChangeLog
r201663 r201673 1 2016-06-03 Commit Queue <commit-queue@webkit.org> 2 3 Unreviewed, rolling out r201663. 4 https://bugs.webkit.org/show_bug.cgi?id=158374 5 6 Broke the Windows build (Requested by andersca on #webkit). 7 8 Reverted changeset: 9 10 "Rename NoncopyableFunction to Function" 11 https://bugs.webkit.org/show_bug.cgi?id=158354 12 http://trac.webkit.org/changeset/201663 13 1 14 2016-06-03 Anders Carlsson <andersca@apple.com> 2 15 -
trunk/Source/WebKit2/NetworkProcess/NetworkProcess.cpp
r201663 r201673 309 309 } 310 310 311 static void fetchDiskCacheEntries(SessionID sessionID, OptionSet<WebsiteDataFetchOption> fetchOptions, Function<void (Vector<WebsiteData::Entry>)>&& completionHandler)311 static void fetchDiskCacheEntries(SessionID sessionID, OptionSet<WebsiteDataFetchOption> fetchOptions, NoncopyableFunction<void (Vector<WebsiteData::Entry>)>&& completionHandler) 312 312 { 313 313 #if ENABLE(NETWORK_CACHE) … … 353 353 { 354 354 struct CallbackAggregator final : public RefCounted<CallbackAggregator> { 355 explicit CallbackAggregator( Function<void (WebsiteData)>&& completionHandler)355 explicit CallbackAggregator(NoncopyableFunction<void (WebsiteData)>&& completionHandler) 356 356 : m_completionHandler(WTFMove(completionHandler)) 357 357 { … … 367 367 } 368 368 369 Function<void (WebsiteData)> m_completionHandler;369 NoncopyableFunction<void (WebsiteData)> m_completionHandler; 370 370 WebsiteData m_websiteData; 371 371 }; … … 413 413 } 414 414 415 static void clearDiskCacheEntries(const Vector<SecurityOriginData>& origins, Function<void ()>&& completionHandler)415 static void clearDiskCacheEntries(const Vector<SecurityOriginData>& origins, NoncopyableFunction<void ()>&& completionHandler) 416 416 { 417 417 #if ENABLE(NETWORK_CACHE) -
trunk/Source/WebKit2/NetworkProcess/NetworkProcess.h
r201663 r201673 36 36 #include <memory> 37 37 #include <wtf/Forward.h> 38 #include <wtf/Function.h>39 38 #include <wtf/NeverDestroyed.h> 39 #include <wtf/NoncopyableFunction.h> 40 40 #include <wtf/RetainPtr.h> 41 41 -
trunk/Source/WebKit2/NetworkProcess/cache/NetworkCache.cpp
r201663 r201673 522 522 } 523 523 524 void Cache::traverse( Function<void (const TraversalEntry*)>&& traverseHandler)524 void Cache::traverse(NoncopyableFunction<void (const TraversalEntry*)>&& traverseHandler) 525 525 { 526 526 ASSERT(isEnabled()); -
trunk/Source/WebKit2/NetworkProcess/cache/NetworkCache.h
r201663 r201673 33 33 #include "ShareableResource.h" 34 34 #include <WebCore/ResourceResponse.h> 35 #include <wtf/ Function.h>35 #include <wtf/NoncopyableFunction.h> 36 36 #include <wtf/text/WTFString.h> 37 37 … … 115 115 const Storage::RecordInfo& recordInfo; 116 116 }; 117 void traverse( Function<void (const TraversalEntry*)>&&);117 void traverse(NoncopyableFunction<void (const TraversalEntry*)>&&); 118 118 void remove(const Key&); 119 119 void remove(const WebCore::ResourceRequest&); -
trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp
r201663 r201673 70 70 } 71 71 72 static inline void runTaskInQueue( Function<void ()>&& task, WorkQueue* queue)72 static inline void runTaskInQueue(NoncopyableFunction<void ()>&& task, WorkQueue* queue) 73 73 { 74 74 if (queue) { -
trunk/Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.h
r201663 r201673 36 36 #include <wtf/Deque.h> 37 37 #include <wtf/HashSet.h> 38 #include <wtf/ Function.h>38 #include <wtf/NoncopyableFunction.h> 39 39 #include <wtf/Optional.h> 40 40 #include <wtf/WorkQueue.h> … … 80 80 }; 81 81 typedef unsigned TraverseFlags; 82 typedef Function<void (const Record*, const RecordInfo&)> TraverseHandler;82 typedef NoncopyableFunction<void (const Record*, const RecordInfo&)> TraverseHandler; 83 83 // Null record signals end. 84 84 void traverse(const String& type, TraverseFlags, TraverseHandler&&);
Note: See TracChangeset
for help on using the changeset viewer.