iterator.h
上传用户:sichengcw
上传日期:2009-02-17
资源大小:202k
文件大小:3k
源码类别:

STL

开发平台:

Visual C++

  1. /*
  2.  *
  3.  * Copyright (c) 1994
  4.  * Hewlett-Packard Company
  5.  *
  6.  * Permission to use, copy, modify, distribute and sell this software
  7.  * and its documentation for any purpose is hereby granted without fee,
  8.  * provided that the above copyright notice appear in all copies and
  9.  * that both that copyright notice and this permission notice appear
  10.  * in supporting documentation.  Hewlett-Packard Company makes no
  11.  * representations about the suitability of this software for any
  12.  * purpose.  It is provided "as is" without express or implied warranty.
  13.  *
  14.  *
  15.  * Copyright (c) 1996
  16.  * Silicon Graphics Computer Systems, Inc.
  17.  *
  18.  * Permission to use, copy, modify, distribute and sell this software
  19.  * and its documentation for any purpose is hereby granted without fee,
  20.  * provided that the above copyright notice appear in all copies and
  21.  * that both that copyright notice and this permission notice appear
  22.  * in supporting documentation.  Silicon Graphics makes no
  23.  * representations about the suitability of this software for any
  24.  * purpose.  It is provided "as is" without express or implied warranty.
  25.  */
  26. #ifndef __SGI_STL_ITERATOR_H
  27. #define __SGI_STL_ITERATOR_H
  28. #ifndef __SGI_STL_FUNCTION_H
  29. #include <function.h>
  30. #endif
  31. #include <stddef.h>
  32. #include <iostream.h>
  33. #ifndef __SGI_STL_INTERNAL_ITERATOR_H
  34. #include <stl_iterator.h>
  35. #endif
  36. #ifndef __TYPE_TRAITS_H
  37. #include <type_traits.h>
  38. #endif
  39. #ifndef __SGI_STL_INTERNAL_CONSTRUCT_H
  40. #include <stl_construct.h>
  41. #endif
  42. #ifndef __SGI_STL_INTERNAL_RAW_STORAGE_ITERATOR_H
  43. #include <stl_raw_storage_iter.h>
  44. #endif
  45. #ifdef __STL_USE_NAMESPACES
  46. // Names from stl_iterator.h
  47. using __STD::input_iterator_tag;
  48. using __STD::output_iterator_tag;
  49. using __STD::forward_iterator_tag;
  50. using __STD::bidirectional_iterator_tag;
  51. using __STD::random_access_iterator_tag;
  52. #if 0
  53. using __STD::iterator;
  54. #endif
  55. using __STD::input_iterator;
  56. using __STD::output_iterator;
  57. using __STD::forward_iterator;
  58. using __STD::bidirectional_iterator;
  59. using __STD::random_access_iterator;
  60. #ifdef __STL_CLASS_PARTIAL_SPECIALIZATION
  61. using __STD::iterator_traits;
  62. #endif
  63. using __STD::iterator_category;
  64. using __STD::distance_type;
  65. using __STD::value_type;
  66. using __STD::distance; 
  67. using __STD::advance; 
  68. using __STD::insert_iterator;
  69. using __STD::front_insert_iterator;
  70. using __STD::back_insert_iterator;
  71. using __STD::inserter;
  72. using __STD::front_inserter;
  73. using __STD::back_inserter;
  74. using __STD::reverse_iterator;
  75. using __STD::reverse_bidirectional_iterator;
  76. using __STD::istream_iterator;
  77. using __STD::ostream_iterator;
  78. // Names from stl_construct.h
  79. using __STD::construct;
  80. using __STD::destroy;
  81. // Names from stl_raw_storage_iter.h
  82. using __STD::raw_storage_iterator;
  83. #endif /* __STL_USE_NAMESPACES */
  84. #endif /* __SGI_STL_ITERATOR_H */
  85. // Local Variables:
  86. // mode:C++
  87. // End: