base: Make TaskQueue a typedef instead of a subclass

Subclassing STL types is bad. And std::queue::swap exists as of c++11.

R=vmpstr

Review-Url: https://codereview.chromium.org/2068833003
Cr-Commit-Position: refs/heads/master@{#400006}
diff --git a/base/message_loop/incoming_task_queue.cc b/base/message_loop/incoming_task_queue.cc
index 8298c28..6deaba5 100644
--- a/base/message_loop/incoming_task_queue.cc
+++ b/base/message_loop/incoming_task_queue.cc
@@ -104,7 +104,7 @@
     // incoming queue becomes nonempty we need to schedule it again.
     message_loop_scheduled_ = false;
   } else {
-    incoming_queue_.Swap(work_queue);
+    incoming_queue_.swap(*work_queue);
   }
   // Reset the count of high resolution tasks since our queue is now empty.
   int high_res_tasks = high_res_task_count_;
diff --git a/base/pending_task.cc b/base/pending_task.cc
index d21f7c7..c0999bab 100644
--- a/base/pending_task.cc
+++ b/base/pending_task.cc
@@ -51,8 +51,4 @@
   return (sequence_num - other.sequence_num) > 0;
 }
 
-void TaskQueue::Swap(TaskQueue* queue) {
-  c.swap(queue->c);  // Calls std::deque::swap.
-}
-
 }  // namespace base
diff --git a/base/pending_task.h b/base/pending_task.h
index fd0b883..c31ab9a 100644
--- a/base/pending_task.h
+++ b/base/pending_task.h
@@ -46,15 +46,10 @@
   bool is_high_res;
 };
 
-// Wrapper around std::queue specialized for PendingTask which adds a Swap
-// helper method.
-class BASE_EXPORT TaskQueue : public std::queue<PendingTask> {
- public:
-  void Swap(TaskQueue* queue);
-};
+using TaskQueue = std::queue<PendingTask>;
 
 // PendingTasks are sorted by their |delayed_run_time| property.
-typedef std::priority_queue<base::PendingTask> DelayedTaskQueue;
+using DelayedTaskQueue = std::priority_queue<base::PendingTask>;
 
 }  // namespace base