null_node_metadata.hpp revision 169691
1272343Sngie// -*- C++ -*- 2272343Sngie 3272343Sngie// Copyright (C) 2005, 2006 Free Software Foundation, Inc. 4272343Sngie// 5272343Sngie// This file is part of the GNU ISO C++ Library. This library is free 6272343Sngie// software; you can redistribute it and/or modify it under the terms 7272343Sngie// of the GNU General Public License as published by the Free Software 8272343Sngie// Foundation; either version 2, or (at your option) any later 9272343Sngie// version. 10272343Sngie 11272343Sngie// This library is distributed in the hope that it will be useful, but 12272343Sngie// WITHOUT ANY WARRANTY; without even the implied warranty of 13272343Sngie// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14272343Sngie// General Public License for more details. 15272343Sngie 16272343Sngie// You should have received a copy of the GNU General Public License 17272343Sngie// along with this library; see the file COPYING. If not, write to 18272343Sngie// the Free Software Foundation, 59 Temple Place - Suite 330, Boston, 19272343Sngie// MA 02111-1307, USA. 20272343Sngie 21272343Sngie// As a special exception, you may use this file as part of a free 22272343Sngie// software library without restriction. Specifically, if other files 23272343Sngie// instantiate templates or use macros or inline functions from this 24272343Sngie// file, or you compile this file and link it with other files to 25272343Sngie// produce an executable, this file does not by itself cause the 26272343Sngie// resulting executable to be covered by the GNU General Public 27272343Sngie// License. This exception does not however invalidate any other 28272343Sngie// reasons why the executable file might be covered by the GNU General 29272343Sngie// Public License. 30272343Sngie 31272343Sngie// Copyright (C) 2004 Ami Tavory and Vladimir Dreizin, IBM-HRL. 32272343Sngie 33272343Sngie// Permission to use, copy, modify, sell, and distribute this software 34272343Sngie// is hereby granted without fee, provided that the above copyright 35272343Sngie// notice appears in all copies, and that both that copyright notice 36272343Sngie// and this permission notice appear in supporting documentation. None 37272343Sngie// of the above authors, nor IBM Haifa Research Laboratories, make any 38272343Sngie// representation about the suitability of this software for any 39272343Sngie// purpose. It is provided "as is" without express or implied 40272343Sngie// warranty. 41272343Sngie 42272343Sngie/** 43272343Sngie * @file null_node_metadata.hpp 44272343Sngie * Contains an implementation class for tree-like classes. 45272343Sngie */ 46272343Sngie 47272343Sngie#ifndef PB_DS_NULL_NODE_METADATA_HPP 48272343Sngie#define PB_DS_NULL_NODE_METADATA_HPP 49272343Sngie 50272343Sngie#include <ext/pb_ds/detail/types_traits.hpp> 51272343Sngie 52272343Sngienamespace pb_ds 53272343Sngie{ 54272343Sngie namespace detail 55272343Sngie { 56272343Sngie template<typename Key, class Data, class Allocator> 57272343Sngie struct dumconst_node_iterator 58272343Sngie { 59272343Sngie private: 60272343Sngie typedef typename types_traits<Key, Data, Allocator, false>::pointer const_iterator; 61272343Sngie 62272343Sngie public: 63272343Sngie typedef const_iterator value_type; 64272343Sngie typedef const_iterator const_reference; 65272343Sngie typedef const_reference reference; 66 }; 67 68 struct null_node_metadata 69 { }; 70 } // namespace detail 71} // namespace pb_ds 72 73#endif 74