| Index: third_party/WebKit/Source/wtf/HashIterators.h
|
| diff --git a/third_party/WebKit/Source/wtf/HashIterators.h b/third_party/WebKit/Source/wtf/HashIterators.h
|
| index 73b813d9dc465185d6161fcad8b3006d1c05c201..2b79b270197bbcfeeaa11f7e5754ac2d86923b23 100644
|
| --- a/third_party/WebKit/Source/wtf/HashIterators.h
|
| +++ b/third_party/WebKit/Source/wtf/HashIterators.h
|
| @@ -1,282 +1,9 @@
|
| -/*
|
| - * Copyright (C) 2007 Apple Inc. All rights reserved.
|
| - *
|
| - * Redistribution and use in source and binary forms, with or without
|
| - * modification, are permitted provided that the following conditions
|
| - * are met:
|
| - * 1. Redistributions of source code must retain the above copyright
|
| - * notice, this list of conditions and the following disclaimer.
|
| - * 2. Redistributions in binary form must reproduce the above copyright
|
| - * notice, this list of conditions and the following disclaimer in the
|
| - * documentation and/or other materials provided with the distribution.
|
| - *
|
| - * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
|
| - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
| - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
| - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
|
| - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
| - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
| - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
| - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
|
| - * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
| - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
| - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
| - */
|
| +// Copyright 2017 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 WTF_HashIterators_h
|
| -#define WTF_HashIterators_h
|
| +#include "platform/wtf/HashIterators.h"
|
|
|
| -#include "wtf/Allocator.h"
|
| -
|
| -namespace WTF {
|
| -
|
| -template <typename HashTableType, typename KeyType, typename MappedType>
|
| -struct HashTableConstKeysIterator;
|
| -template <typename HashTableType, typename KeyType, typename MappedType>
|
| -struct HashTableConstValuesIterator;
|
| -template <typename HashTableType, typename KeyType, typename MappedType>
|
| -struct HashTableKeysIterator;
|
| -template <typename HashTableType, typename KeyType, typename MappedType>
|
| -struct HashTableValuesIterator;
|
| -
|
| -template <typename HashTableType, typename KeyType, typename MappedType>
|
| -struct HashTableConstIteratorAdapter<HashTableType,
|
| - KeyValuePair<KeyType, MappedType>> {
|
| - STACK_ALLOCATED();
|
| -
|
| - private:
|
| - typedef KeyValuePair<KeyType, MappedType> ValueType;
|
| -
|
| - public:
|
| - typedef HashTableConstKeysIterator<HashTableType, KeyType, MappedType>
|
| - KeysIterator;
|
| - typedef HashTableConstValuesIterator<HashTableType, KeyType, MappedType>
|
| - ValuesIterator;
|
| -
|
| - HashTableConstIteratorAdapter() {}
|
| - HashTableConstIteratorAdapter(
|
| - const typename HashTableType::const_iterator& impl)
|
| - : m_impl(impl) {}
|
| -
|
| - const ValueType* get() const { return (const ValueType*)m_impl.get(); }
|
| - const ValueType& operator*() const { return *get(); }
|
| - const ValueType* operator->() const { return get(); }
|
| -
|
| - HashTableConstIteratorAdapter& operator++() {
|
| - ++m_impl;
|
| - return *this;
|
| - }
|
| - // postfix ++ intentionally omitted
|
| -
|
| - KeysIterator keys() { return KeysIterator(*this); }
|
| - ValuesIterator values() { return ValuesIterator(*this); }
|
| -
|
| - typename HashTableType::const_iterator m_impl;
|
| -};
|
| -
|
| -template <typename HashTableType, typename KeyType, typename MappedType>
|
| -struct HashTableIteratorAdapter<HashTableType,
|
| - KeyValuePair<KeyType, MappedType>> {
|
| - STACK_ALLOCATED();
|
| -
|
| - private:
|
| - typedef KeyValuePair<KeyType, MappedType> ValueType;
|
| -
|
| - public:
|
| - typedef HashTableKeysIterator<HashTableType, KeyType, MappedType>
|
| - KeysIterator;
|
| - typedef HashTableValuesIterator<HashTableType, KeyType, MappedType>
|
| - ValuesIterator;
|
| -
|
| - HashTableIteratorAdapter() {}
|
| - HashTableIteratorAdapter(const typename HashTableType::iterator& impl)
|
| - : m_impl(impl) {}
|
| -
|
| - ValueType* get() const { return (ValueType*)m_impl.get(); }
|
| - ValueType& operator*() const { return *get(); }
|
| - ValueType* operator->() const { return get(); }
|
| -
|
| - HashTableIteratorAdapter& operator++() {
|
| - ++m_impl;
|
| - return *this;
|
| - }
|
| - // postfix ++ intentionally omitted
|
| -
|
| - operator HashTableConstIteratorAdapter<HashTableType, ValueType>() {
|
| - typename HashTableType::const_iterator i = m_impl;
|
| - return i;
|
| - }
|
| -
|
| - KeysIterator keys() { return KeysIterator(*this); }
|
| - ValuesIterator values() { return ValuesIterator(*this); }
|
| -
|
| - typename HashTableType::iterator m_impl;
|
| -};
|
| -
|
| -template <typename HashTableType, typename KeyType, typename MappedType>
|
| -struct HashTableConstKeysIterator {
|
| - STACK_ALLOCATED();
|
| -
|
| - private:
|
| - typedef HashTableConstIteratorAdapter<HashTableType,
|
| - KeyValuePair<KeyType, MappedType>>
|
| - ConstIterator;
|
| -
|
| - public:
|
| - HashTableConstKeysIterator(const ConstIterator& impl) : m_impl(impl) {}
|
| -
|
| - const KeyType* get() const { return &(m_impl.get()->key); }
|
| - const KeyType& operator*() const { return *get(); }
|
| - const KeyType* operator->() const { return get(); }
|
| -
|
| - HashTableConstKeysIterator& operator++() {
|
| - ++m_impl;
|
| - return *this;
|
| - }
|
| - // postfix ++ intentionally omitted
|
| -
|
| - ConstIterator m_impl;
|
| -};
|
| -
|
| -template <typename HashTableType, typename KeyType, typename MappedType>
|
| -struct HashTableConstValuesIterator {
|
| - STACK_ALLOCATED();
|
| -
|
| - private:
|
| - typedef HashTableConstIteratorAdapter<HashTableType,
|
| - KeyValuePair<KeyType, MappedType>>
|
| - ConstIterator;
|
| -
|
| - public:
|
| - HashTableConstValuesIterator(const ConstIterator& impl) : m_impl(impl) {}
|
| -
|
| - const MappedType* get() const { return &(m_impl.get()->value); }
|
| - const MappedType& operator*() const { return *get(); }
|
| - const MappedType* operator->() const { return get(); }
|
| -
|
| - HashTableConstValuesIterator& operator++() {
|
| - ++m_impl;
|
| - return *this;
|
| - }
|
| - // postfix ++ intentionally omitted
|
| -
|
| - ConstIterator m_impl;
|
| -};
|
| -
|
| -template <typename HashTableType, typename KeyType, typename MappedType>
|
| -struct HashTableKeysIterator {
|
| - STACK_ALLOCATED();
|
| -
|
| - private:
|
| - typedef HashTableIteratorAdapter<HashTableType,
|
| - KeyValuePair<KeyType, MappedType>>
|
| - Iterator;
|
| - typedef HashTableConstIteratorAdapter<HashTableType,
|
| - KeyValuePair<KeyType, MappedType>>
|
| - ConstIterator;
|
| -
|
| - public:
|
| - HashTableKeysIterator(const Iterator& impl) : m_impl(impl) {}
|
| -
|
| - KeyType* get() const { return &(m_impl.get()->key); }
|
| - KeyType& operator*() const { return *get(); }
|
| - KeyType* operator->() const { return get(); }
|
| -
|
| - HashTableKeysIterator& operator++() {
|
| - ++m_impl;
|
| - return *this;
|
| - }
|
| - // postfix ++ intentionally omitted
|
| -
|
| - operator HashTableConstKeysIterator<HashTableType, KeyType, MappedType>() {
|
| - ConstIterator i = m_impl;
|
| - return i;
|
| - }
|
| -
|
| - Iterator m_impl;
|
| -};
|
| -
|
| -template <typename HashTableType, typename KeyType, typename MappedType>
|
| -struct HashTableValuesIterator {
|
| - STACK_ALLOCATED();
|
| -
|
| - private:
|
| - typedef HashTableIteratorAdapter<HashTableType,
|
| - KeyValuePair<KeyType, MappedType>>
|
| - Iterator;
|
| - typedef HashTableConstIteratorAdapter<HashTableType,
|
| - KeyValuePair<KeyType, MappedType>>
|
| - ConstIterator;
|
| -
|
| - public:
|
| - HashTableValuesIterator(const Iterator& impl) : m_impl(impl) {}
|
| -
|
| - MappedType* get() const { return &(m_impl.get()->value); }
|
| - MappedType& operator*() const { return *get(); }
|
| - MappedType* operator->() const { return get(); }
|
| -
|
| - HashTableValuesIterator& operator++() {
|
| - ++m_impl;
|
| - return *this;
|
| - }
|
| - // postfix ++ intentionally omitted
|
| -
|
| - operator HashTableConstValuesIterator<HashTableType, KeyType, MappedType>() {
|
| - ConstIterator i = m_impl;
|
| - return i;
|
| - }
|
| -
|
| - Iterator m_impl;
|
| -};
|
| -
|
| -template <typename T, typename U, typename V>
|
| -inline bool operator==(const HashTableConstKeysIterator<T, U, V>& a,
|
| - const HashTableConstKeysIterator<T, U, V>& b) {
|
| - return a.m_impl == b.m_impl;
|
| -}
|
| -
|
| -template <typename T, typename U, typename V>
|
| -inline bool operator!=(const HashTableConstKeysIterator<T, U, V>& a,
|
| - const HashTableConstKeysIterator<T, U, V>& b) {
|
| - return a.m_impl != b.m_impl;
|
| -}
|
| -
|
| -template <typename T, typename U, typename V>
|
| -inline bool operator==(const HashTableConstValuesIterator<T, U, V>& a,
|
| - const HashTableConstValuesIterator<T, U, V>& b) {
|
| - return a.m_impl == b.m_impl;
|
| -}
|
| -
|
| -template <typename T, typename U, typename V>
|
| -inline bool operator!=(const HashTableConstValuesIterator<T, U, V>& a,
|
| - const HashTableConstValuesIterator<T, U, V>& b) {
|
| - return a.m_impl != b.m_impl;
|
| -}
|
| -
|
| -template <typename T, typename U, typename V>
|
| -inline bool operator==(const HashTableKeysIterator<T, U, V>& a,
|
| - const HashTableKeysIterator<T, U, V>& b) {
|
| - return a.m_impl == b.m_impl;
|
| -}
|
| -
|
| -template <typename T, typename U, typename V>
|
| -inline bool operator!=(const HashTableKeysIterator<T, U, V>& a,
|
| - const HashTableKeysIterator<T, U, V>& b) {
|
| - return a.m_impl != b.m_impl;
|
| -}
|
| -
|
| -template <typename T, typename U, typename V>
|
| -inline bool operator==(const HashTableValuesIterator<T, U, V>& a,
|
| - const HashTableValuesIterator<T, U, V>& b) {
|
| - return a.m_impl == b.m_impl;
|
| -}
|
| -
|
| -template <typename T, typename U, typename V>
|
| -inline bool operator!=(const HashTableValuesIterator<T, U, V>& a,
|
| - const HashTableValuesIterator<T, U, V>& b) {
|
| - return a.m_impl != b.m_impl;
|
| -}
|
| -
|
| -} // namespace WTF
|
| -
|
| -#endif // WTF_HashIterators_h
|
| +// The contents of this header was moved to platform/wtf as part of
|
| +// WTF migration project. See the following post for details:
|
| +// https://groups.google.com/a/chromium.org/d/msg/blink-dev/tLdAZCTlcAA/bYXVT8gYCAAJ
|
|
|