/*============================================================================= Copyright (c) 2001-2007 Joel de Guzman Distributed under 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) ==============================================================================*/ #ifndef PHOENIX_OBJECT_DYNAMIC_CAST_HPP #define PHOENIX_OBJECT_DYNAMIC_CAST_HPP #include namespace boost { namespace phoenix { namespace impl { template struct dynamic_cast_eval { template struct result { typedef T type; }; template static RT eval(Env const& env, U& obj) { return dynamic_cast(obj.eval(env)); } }; } template inline actor, U>::type> dynamic_cast_(U const& obj) { return compose >(obj); } }} #endif