1/*
2 * Copyright Andrey Semashev 2007 - 2015.
3 * Distributed under the Boost Software License, Version 1.0.
4 * (See accompanying file LICENSE_1_0.txt or copy at
5 * http://www.boost.org/LICENSE_1_0.txt)
6 */
7/*!
8 * \file value_extraction_fwd.hpp
9 * \author Andrey Semashev
10 * \date 01.03.2008
11 *
12 * The header contains forward declaration of tools for extracting attribute values
13 * from the view.
14 */
15
16#ifndef BOOST_LOG_ATTRIBUTES_VALUE_EXTRACTION_FWD_HPP_INCLUDED_
17#define BOOST_LOG_ATTRIBUTES_VALUE_EXTRACTION_FWD_HPP_INCLUDED_
18
19#include <boost/log/detail/config.hpp>
20#include <boost/log/attributes/fallback_policy_fwd.hpp>
21
22#ifdef BOOST_HAS_PRAGMA_ONCE
23#pragma once
24#endif
25
26namespace boost {
27
28BOOST_LOG_OPEN_NAMESPACE
29
30namespace result_of {
31
32/*!
33 * \brief A metafunction that allows to acquire the result of the value extraction
34 */
35template< typename T, typename DefaultT = T, typename TagT = void >
36struct extract_or_default;
37
38/*!
39 * \brief A metafunction that allows to acquire the result of the value extraction
40 */
41template< typename T, typename TagT = void >
42struct extract_or_throw;
43
44/*!
45 * \brief A metafunction that allows to acquire the result of the value extraction
46 */
47template< typename T, typename TagT = void >
48struct extract;
49
50} // namespace result_of
51
52/*!
53 * \brief Generic attribute value extractor
54 */
55template< typename T, typename FallbackPolicyT = fallback_to_none, typename TagT = void >
56class value_extractor;
57
58BOOST_LOG_CLOSE_NAMESPACE // namespace log
59
60} // namespace boost
61
62#endif // BOOST_LOG_ATTRIBUTES_VALUE_EXTRACTION_FWD_HPP_INCLUDED_
63

source code of boost/libs/log/include/boost/log/attributes/value_extraction_fwd.hpp