/*============================================================================= Copyright (c) 2003 Joel de Guzman Copyright (c) 2004 Peder Holt Use, modification and distribution is subject to the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) ==============================================================================*/ #if !defined(FUSION_ITERATOR_DETAIL_ITERATOR_BASE_HPP) #define FUSION_ITERATOR_DETAIL_ITERATOR_BASE_HPP namespace boost { namespace fusion { struct iterator_root {}; template struct iterator_base : iterator_root { Iterator const& cast() const; Iterator& cast(); }; template Iterator const& iterator_base::cast() const { return static_cast(*this); } template Iterator& iterator_base::cast() { return static_cast(*this); } }} #endif