| Index: third_party/WebKit/Source/platform/inspector_protocol/CollectionsSTL.h | 
| diff --git a/third_party/WebKit/Source/platform/inspector_protocol/CollectionsSTL.h b/third_party/WebKit/Source/platform/inspector_protocol/CollectionsSTL.h | 
| deleted file mode 100644 | 
| index ee99cfd8bd855bc4e1ad9691acd3b9fbce8840e0..0000000000000000000000000000000000000000 | 
| --- a/third_party/WebKit/Source/platform/inspector_protocol/CollectionsSTL.h | 
| +++ /dev/null | 
| @@ -1,244 +0,0 @@ | 
| -// Copyright 2016 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 CollectionsSTL_h | 
| -#define CollectionsSTL_h | 
| - | 
| -#include "platform/inspector_protocol/Platform.h" | 
| -#include "platform/inspector_protocol/String16.h" | 
| - | 
| -#include <algorithm> | 
| -#include <map> | 
| -#include <vector> | 
| - | 
| -namespace blink { | 
| -namespace protocol { | 
| - | 
| -template <typename T> | 
| -class Vector { | 
| -public: | 
| -    Vector() { } | 
| -    Vector(size_t capacity) : m_impl(capacity) { } | 
| -    typedef typename std::vector<T>::iterator iterator; | 
| -    typedef typename std::vector<T>::const_iterator const_iterator; | 
| - | 
| -    iterator begin() { return m_impl.begin(); } | 
| -    iterator end() { return m_impl.end(); } | 
| -    const_iterator begin() const { return m_impl.begin(); } | 
| -    const_iterator end() const { return m_impl.end(); } | 
| - | 
| -    void resize(size_t s) { m_impl.resize(s); } | 
| -    size_t size() const { return m_impl.size(); } | 
| -    bool isEmpty() const { return !m_impl.size(); } | 
| -    T& operator[](size_t i) { return at(i); } | 
| -    const T& operator[](size_t i) const { return at(i); } | 
| -    T& at(size_t i) { return m_impl[i]; } | 
| -    const T& at(size_t i) const { return m_impl.at(i); } | 
| -    T& last() { return m_impl[m_impl.size() - 1]; } | 
| -    const T& last() const { return m_impl[m_impl.size() - 1]; } | 
| -    void append(const T& t) { m_impl.push_back(t); } | 
| -    void prepend(const T& t) { m_impl.insert(m_impl.begin(), t); } | 
| -    void remove(size_t i) { m_impl.erase(m_impl.begin() + i); } | 
| -    void clear() { m_impl.clear(); } | 
| -    void swap(Vector& other) { m_impl.swap(other.m_impl); } | 
| -    void removeLast() { m_impl.pop_back(); } | 
| - | 
| -private: | 
| -    std::vector<T> m_impl; | 
| -}; | 
| - | 
| -template <typename T> | 
| -class Vector<std::unique_ptr<T>> { | 
| -public: | 
| -    Vector() { } | 
| -    Vector(size_t capacity) : m_impl(capacity) { } | 
| -    Vector(Vector&& other) { m_impl.swap(other.m_impl); } | 
| -    ~Vector() { clear(); } | 
| - | 
| -    typedef typename std::vector<T*>::iterator iterator; | 
| -    typedef typename std::vector<T*>::const_iterator const_iterator; | 
| - | 
| -    iterator begin() { return m_impl.begin(); } | 
| -    iterator end() { return m_impl.end(); } | 
| -    const_iterator begin() const { return m_impl.begin(); } | 
| -    const_iterator end() const { return m_impl.end(); } | 
| - | 
| -    void resize(size_t s) { m_impl.resize(s); } | 
| -    size_t size() const { return m_impl.size(); } | 
| -    bool isEmpty() const { return !m_impl.size(); } | 
| -    T* operator[](size_t i) { return at(i); } | 
| -    const T* operator[](size_t i) const { return at(i); } | 
| -    T* at(size_t i) { return m_impl[i]; } | 
| -    const T* at(size_t i) const { return m_impl.at(i); } | 
| -    T* last() { return m_impl[m_impl.size() - 1]; } | 
| -    const T* last() const { return m_impl[m_impl.size() - 1]; } | 
| -    void append(std::unique_ptr<T> t) { m_impl.push_back(t.release()); } | 
| -    void prepend(std::unique_ptr<T> t) { m_impl.insert(m_impl.begin(), t.release()); } | 
| - | 
| -    void remove(size_t i) | 
| -    { | 
| -        delete m_impl[i]; | 
| -        m_impl.erase(m_impl.begin() + i); | 
| -    } | 
| - | 
| -    void clear() | 
| -    { | 
| -        for (auto t : m_impl) | 
| -            delete t; | 
| -        m_impl.clear(); | 
| -    } | 
| - | 
| -    void swap(Vector& other) { m_impl.swap(other.m_impl); } | 
| -    void swap(Vector&& other) { m_impl.swap(other.m_impl); } | 
| -    void removeLast() | 
| -    { | 
| -        delete last(); | 
| -        m_impl.pop_back(); | 
| -    } | 
| - | 
| -private: | 
| -    Vector(const Vector&) = delete; | 
| -    Vector& operator=(const Vector&) = delete; | 
| -    std::vector<T*> m_impl; | 
| -}; | 
| - | 
| -template <typename K, typename V, typename I> | 
| -class HashMapIterator { | 
| -public: | 
| -    HashMapIterator(const I& impl) : m_impl(impl) { } | 
| -    std::pair<K, V*>* get() const { m_pair.first = m_impl->first; m_pair.second = &m_impl->second; return &m_pair; } | 
| -    std::pair<K, V*>& operator*() const { return *get(); } | 
| -    std::pair<K, V*>* operator->() const { return get(); } | 
| - | 
| -    bool operator==(const HashMapIterator<K, V, I>& other) const { return m_impl == other.m_impl; } | 
| -    bool operator!=(const HashMapIterator<K, V, I>& other) const { return m_impl != other.m_impl; } | 
| - | 
| -    HashMapIterator<K, V, I>& operator++() { ++m_impl; return *this; } | 
| - | 
| -private: | 
| -    mutable std::pair<K, V*> m_pair; | 
| -    I m_impl; | 
| -}; | 
| - | 
| -template <typename K, typename V, typename I> | 
| -class HashMapIterator<K, std::unique_ptr<V>, I> { | 
| -public: | 
| -    HashMapIterator(const I& impl) : m_impl(impl) { } | 
| -    std::pair<K, V*>* get() const { m_pair.first = m_impl->first; m_pair.second = m_impl->second; return &m_pair; } | 
| -    std::pair<K, V*>& operator*() const { return *get(); } | 
| -    std::pair<K, V*>* operator->() const { return get(); } | 
| - | 
| -    bool operator==(const HashMapIterator<K, std::unique_ptr<V>, I>& other) const { return m_impl == other.m_impl; } | 
| -    bool operator!=(const HashMapIterator<K, std::unique_ptr<V>, I>& other) const { return m_impl != other.m_impl; } | 
| - | 
| -    HashMapIterator<K, std::unique_ptr<V>, I>& operator++() { ++m_impl; return *this; } | 
| - | 
| -private: | 
| -    mutable std::pair<K, V*> m_pair; | 
| -    I m_impl; | 
| -}; | 
| - | 
| -template <typename K, typename V> | 
| -class HashMap { | 
| -public: | 
| -    HashMap() { } | 
| -    ~HashMap() { } | 
| - | 
| -    using iterator = HashMapIterator<K, V, typename std::map<K, V>::iterator>; | 
| -    using const_iterator = HashMapIterator<K, const V, typename std::map<K, V>::const_iterator>; | 
| - | 
| -    iterator begin() { return iterator(m_impl.begin()); } | 
| -    iterator end() { return iterator(m_impl.end()); } | 
| -    iterator find(const K& k) { return iterator(m_impl.find(k)); } | 
| -    const_iterator begin() const { return const_iterator(m_impl.begin()); } | 
| -    const_iterator end() const { return const_iterator(m_impl.end()); } | 
| -    const_iterator find(const K& k) const { return const_iterator(m_impl.find(k)); } | 
| - | 
| -    size_t size() const { return m_impl.size(); } | 
| -    bool isEmpty() const { return !m_impl.size(); } | 
| -    bool set(const K& k, const V& v) | 
| -    { | 
| -        bool isNew = m_impl.find(k) == m_impl.end(); | 
| -        m_impl[k] = v; | 
| -        return isNew; | 
| -    } | 
| -    bool contains(const K& k) const { return m_impl.find(k) != m_impl.end(); } | 
| -    V get(const K& k) const { auto it = m_impl.find(k); return it == m_impl.end() ? V() : it->second; } | 
| -    void remove(const K& k) { m_impl.erase(k); } | 
| -    void clear() { m_impl.clear(); } | 
| -    V take(const K& k) | 
| -    { | 
| -        V result = m_impl[k]; | 
| -        m_impl.erase(k); | 
| -        return result; | 
| -    } | 
| - | 
| -private: | 
| -    std::map<K, V> m_impl; | 
| -}; | 
| - | 
| -template <typename K, typename V> | 
| -class HashMap<K, std::unique_ptr<V>> { | 
| -public: | 
| -    HashMap() { } | 
| -    ~HashMap() { clear(); } | 
| - | 
| -    using iterator = HashMapIterator<K, std::unique_ptr<V>, typename std::map<K, V*>::iterator>; | 
| -    using const_iterator = HashMapIterator<K, std::unique_ptr<V>, typename std::map<K, V*>::const_iterator>; | 
| - | 
| -    iterator begin() { return iterator(m_impl.begin()); } | 
| -    iterator end() { return iterator(m_impl.end()); } | 
| -    iterator find(const K& k) { return iterator(m_impl.find(k)); } | 
| -    const_iterator begin() const { return const_iterator(m_impl.begin()); } | 
| -    const_iterator end() const { return const_iterator(m_impl.end()); } | 
| -    const_iterator find(const K& k) const { return const_iterator(m_impl.find(k)); } | 
| - | 
| -    size_t size() const { return m_impl.size(); } | 
| -    bool isEmpty() const { return !m_impl.size(); } | 
| -    bool set(const K& k, std::unique_ptr<V> v) | 
| -    { | 
| -        bool isNew = m_impl.find(k) == m_impl.end(); | 
| -        if (!isNew) | 
| -            delete m_impl[k]; | 
| -        m_impl[k] = v.release(); | 
| -        return isNew; | 
| -    } | 
| -    bool contains(const K& k) const { return m_impl.find(k) != m_impl.end(); } | 
| -    V* get(const K& k) const { auto it = m_impl.find(k); return it == m_impl.end() ? nullptr : it->second; } | 
| -    std::unique_ptr<V> take(const K& k) | 
| -    { | 
| -        if (!contains(k)) | 
| -            return nullptr; | 
| -        std::unique_ptr<V> result(m_impl[k]); | 
| -        delete m_impl[k]; | 
| -        m_impl.erase(k); | 
| -        return result; | 
| -    } | 
| -    void remove(const K& k) | 
| -    { | 
| -        delete m_impl[k]; | 
| -        m_impl.erase(k); | 
| -    } | 
| - | 
| -    void clear() | 
| -    { | 
| -        for (auto pair : m_impl) | 
| -            delete pair.second; | 
| -        m_impl.clear(); | 
| -    } | 
| - | 
| -private: | 
| -    std::map<K, V*> m_impl; | 
| -}; | 
| - | 
| -template <typename K> | 
| -class HashSet : public protocol::HashMap<K, K> { | 
| -public: | 
| -    void add(const K& k) { this->set(k, k); } | 
| -}; | 
| - | 
| -} // namespace platform | 
| -} // namespace blink | 
| - | 
| -#endif // !defined(CollectionsSTL_h) | 
|  |