/*============================================================================= Copyright (c) 2006 Tobias Schwinger http://spirit.sourceforge.net/ 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(BOOST_SPIRIT_TREE_COMMON_FWD_HPP) #define BOOST_SPIRIT_TREE_COMMON_FWD_HPP #include namespace boost { namespace spirit { template struct tree_node; template struct node_iter_data; template class node_iter_data_factory; template class node_val_data_factory; template class node_all_val_data_factory; template < typename IteratorT, typename NodeFactoryT = node_val_data_factory, typename T = nil_t > class tree_match; struct tree_policy; template < typename MatchPolicyT, typename IteratorT, typename NodeFactoryT, typename TreePolicyT, typename T = nil_t > struct common_tree_match_policy; template struct common_tree_tree_policy; template struct no_tree_gen_node_parser; template struct leaf_node_parser; template struct node_parser; struct discard_node_op; struct reduced_node_op; struct infix_node_op; struct discard_first_node_op; struct discard_last_node_op; struct inner_node_op; template struct action_directive_parser; struct access_match_action { template struct action; }; struct access_node_action { template struct action; }; template < typename IteratorT = char const *, typename NodeFactoryT = node_val_data_factory, typename T = nil_t > struct tree_parse_info; }} // namespace boost::spirit #endif