generate_index_binder.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 + -