1*76d0caaeSpatrick // -*- C++ -*- 2*76d0caaeSpatrick //===----------------------------------------------------------------------===// 3*76d0caaeSpatrick // 4*76d0caaeSpatrick // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 5*76d0caaeSpatrick // See https://llvm.org/LICENSE.txt for license information. 6*76d0caaeSpatrick // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 7*76d0caaeSpatrick // 8*76d0caaeSpatrick //===----------------------------------------------------------------------===// 9*76d0caaeSpatrick 10*76d0caaeSpatrick #ifndef _LIBCPP___ITERATOR_ITERATOR_H 11*76d0caaeSpatrick #define _LIBCPP___ITERATOR_ITERATOR_H 12*76d0caaeSpatrick 13*76d0caaeSpatrick #include <__config> 14*76d0caaeSpatrick #include <cstddef> 15*76d0caaeSpatrick 16*76d0caaeSpatrick #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) 17*76d0caaeSpatrick # pragma GCC system_header 18*76d0caaeSpatrick #endif 19*76d0caaeSpatrick 20*76d0caaeSpatrick _LIBCPP_BEGIN_NAMESPACE_STD 21*76d0caaeSpatrick 22*76d0caaeSpatrick template<class _Category, class _Tp, class _Distance = ptrdiff_t, 23*76d0caaeSpatrick class _Pointer = _Tp*, class _Reference = _Tp&> 24*76d0caaeSpatrick struct _LIBCPP_TEMPLATE_VIS _LIBCPP_DEPRECATED_IN_CXX17 iterator 25*76d0caaeSpatrick { 26*76d0caaeSpatrick typedef _Tp value_type; 27*76d0caaeSpatrick typedef _Distance difference_type; 28*76d0caaeSpatrick typedef _Pointer pointer; 29*76d0caaeSpatrick typedef _Reference reference; 30*76d0caaeSpatrick typedef _Category iterator_category; 31*76d0caaeSpatrick }; 32*76d0caaeSpatrick 33*76d0caaeSpatrick _LIBCPP_END_NAMESPACE_STD 34*76d0caaeSpatrick 35*76d0caaeSpatrick #endif // _LIBCPP___ITERATOR_ITERATOR_H 36