欢迎来到虫虫下载站 | 资源下载 资源专辑 关于我们
虫虫下载站

generate_index_binder.hpp

Boost provides free peer-reviewed portable C++ source libraries. We emphasize libraries that work
HPP
字号:
// Boost.Bimap//// Copyright (c) 2006-2007 Matias Capeletto//// 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)/// \file detail/generate_index_binder.hpp/// \brief Define macros to help building the set type of definitions#ifndef BOOST_BIMAP_DETAIL_GENERATE_INDEX_BINDER_HPP#define BOOST_BIMAP_DETAIL_GENERATE_INDEX_BINDER_HPP#if defined(_MSC_VER) && (_MSC_VER>=1200)#pragma once#endif#include <boost/config.hpp>#include <boost/multi_index/tag.hpp>/*===========================================================================*/#define BOOST_BIMAP_GENERATE_INDEX_BINDER_0CP(                                \                                                                              \    MULTI_INDEX_TYPE                                                          \                                                                              \)                                                                             \                                                                              \template< class KeyExtractor, class Tag >                                     \struct index_bind                                                             \{                                                                             \    typedef MULTI_INDEX_TYPE                                                  \    <                                                                         \        multi_index::tag< Tag >,                                              \        KeyExtractor                                                          \                                                                              \    > type;                                                                   \};/*===========================================================================*//*===========================================================================*/#define BOOST_BIMAP_GENERATE_INDEX_BINDER_1CP(                                \                                                                              \    MULTI_INDEX_TYPE,                                                         \    CONFIG_PARAMETER                                                          \                                                                              \)                                                                             \                                                                              \template< class KeyExtractor, class Tag >                                     \struct index_bind                                                             \{                                                                             \    typedef MULTI_INDEX_TYPE                                                  \    <                                                                         \        multi_index::tag< Tag >,                                              \        KeyExtractor,                                                         \        CONFIG_PARAMETER                                                      \                                                                              \    > type;                                                                   \};/*===========================================================================*//*===========================================================================*/#define BOOST_BIMAP_GENERATE_INDEX_BINDER_2CP(                                \                                                                              \    MULTI_INDEX_TYPE,                                                         \    CONFIG_PARAMETER_1,                                                       \    CONFIG_PARAMETER_2                                                        \)                                                                             \                                                                              \template< class KeyExtractor, class Tag >                                     \struct index_bind                                                             \{                                                                             \    typedef MULTI_INDEX_TYPE                                                  \    <                                                                         \        multi_index::tag< Tag >,                                              \        KeyExtractor,                                                         \        CONFIG_PARAMETER_1,                                                   \        CONFIG_PARAMETER_2                                                    \                                                                              \    > type;                                                                   \                                                                              \};/*===========================================================================*/// This is a special registration to allow sequenced and random access indices// to play along smoothly with the other index types./*===========================================================================*/#define BOOST_BIMAP_GENERATE_INDEX_BINDER_0CP_NO_EXTRACTOR(                   \                                                                              \    MULTI_INDEX_TYPE                                                          \                                                                              \)                                                                             \                                                                              \template< class KeyExtractor, class Tag >                                     \struct index_bind                                                             \{                                                                             \    typedef MULTI_INDEX_TYPE< multi_index::tag< Tag > > type;                 \};/*===========================================================================*/// This is yet another special registration to allow unconstrained sets// to play along smoothly with the other index types./*===========================================================================*/#define BOOST_BIMAP_GENERATE_INDEX_BINDER_FAKE                                \                                                                              \template< class KeyExtractor, class Tag >                                     \struct index_bind                                                             \{                                                                             \    typedef void type;                                                        \};                                                                            \/*===========================================================================*/#endif // BOOST_BIMAP_DETAIL_GENERATE_INDEX_BINDER_HPP

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -