⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 group.hpp

📁 CGAL is a collaborative effort of several sites in Europe and Israel. The goal is to make the most i
💻 HPP
📖 第 1 页 / 共 2 页
字号:
// ----------------------------------------------------------------------------// group.hpp :  encapsulates a group of manipulators along with an argument// ----------------------------------------------------------------------------//  Copyright Samuel Krempp 2003. Use, modification, and distribution are//  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)//  See http://www.boost.org/libs/format for library home page// ----------------------------------------------------------------------------                      // group_head : cut the last element of a group out.// (is overloaded below on each type of group)// group_last : returns the last element of a group// (is overloaded below on each type of group)// ----------------------------------------------------------------------------#ifndef BOOST_FORMAT_GROUP_HPP#define BOOST_FORMAT_GROUP_HPP#include <boost/config.hpp>namespace boost {namespace io {namespace detail {// empty group, but useful even though.struct group0 {    group0()      {}};template <class Ch, class Tr>inlineBOOST_IO_STD basic_ostream<Ch, Tr>&operator << ( BOOST_IO_STD basic_ostream<Ch, Tr>& os,             const group0& ){    return os; }template <class T1>struct group1{    T1 a1_;    group1(T1 a1)      : a1_(a1)      {}};template <class Ch, class Tr, class T1>inlineBOOST_IO_STD basic_ostream<Ch, Tr>&operator << (BOOST_IO_STD basic_ostream<Ch, Tr>& os,             const group1<T1>& x){    os << x.a1_;     return os; }template <class T1,class T2>struct group2{    T1 a1_;    T2 a2_;    group2(T1 a1,T2 a2)      : a1_(a1),a2_(a2)      {}};template <class Ch, class Tr, class T1,class T2>inlineBOOST_IO_STD basic_ostream<Ch, Tr>&operator << (BOOST_IO_STD basic_ostream<Ch, Tr>& os,             const group2<T1,T2>& x){    os << x.a1_<< x.a2_;     return os; }template <class T1,class T2,class T3>struct group3{    T1 a1_;    T2 a2_;    T3 a3_;    group3(T1 a1,T2 a2,T3 a3)      : a1_(a1),a2_(a2),a3_(a3)      {}};template <class Ch, class Tr, class T1,class T2,class T3>inlineBOOST_IO_STD basic_ostream<Ch, Tr>&operator << (BOOST_IO_STD basic_ostream<Ch, Tr>& os,             const group3<T1,T2,T3>& x){    os << x.a1_<< x.a2_<< x.a3_;     return os; }template <class T1,class T2,class T3,class T4>struct group4{    T1 a1_;    T2 a2_;    T3 a3_;    T4 a4_;    group4(T1 a1,T2 a2,T3 a3,T4 a4)      : a1_(a1),a2_(a2),a3_(a3),a4_(a4)      {}};template <class Ch, class Tr, class T1,class T2,class T3,class T4>inlineBOOST_IO_STD basic_ostream<Ch, Tr>&operator << (BOOST_IO_STD basic_ostream<Ch, Tr>& os,             const group4<T1,T2,T3,T4>& x){    os << x.a1_<< x.a2_<< x.a3_<< x.a4_;     return os; }template <class T1,class T2,class T3,class T4,class T5>struct group5{    T1 a1_;    T2 a2_;    T3 a3_;    T4 a4_;    T5 a5_;    group5(T1 a1,T2 a2,T3 a3,T4 a4,T5 a5)      : a1_(a1),a2_(a2),a3_(a3),a4_(a4),a5_(a5)      {}};template <class Ch, class Tr, class T1,class T2,class T3,class T4,class T5>inlineBOOST_IO_STD basic_ostream<Ch, Tr>&operator << (BOOST_IO_STD basic_ostream<Ch, Tr>& os,             const group5<T1,T2,T3,T4,T5>& x){    os << x.a1_<< x.a2_<< x.a3_<< x.a4_<< x.a5_;     return os; }template <class T1,class T2,class T3,class T4,class T5,class T6>struct group6{    T1 a1_;    T2 a2_;    T3 a3_;    T4 a4_;    T5 a5_;    T6 a6_;    group6(T1 a1,T2 a2,T3 a3,T4 a4,T5 a5,T6 a6)      : a1_(a1),a2_(a2),a3_(a3),a4_(a4),a5_(a5),a6_(a6)      {}};template <class Ch, class Tr, class T1,class T2,class T3,class T4,class T5,class T6>inlineBOOST_IO_STD basic_ostream<Ch, Tr>&operator << (BOOST_IO_STD basic_ostream<Ch, Tr>& os,             const group6<T1,T2,T3,T4,T5,T6>& x){    os << x.a1_<< x.a2_<< x.a3_<< x.a4_<< x.a5_<< x.a6_;     return os; }template <class T1,class T2,class T3,class T4,class T5,class T6,class T7>struct group7{    T1 a1_;    T2 a2_;    T3 a3_;    T4 a4_;    T5 a5_;    T6 a6_;    T7 a7_;    group7(T1 a1,T2 a2,T3 a3,T4 a4,T5 a5,T6 a6,T7 a7)      : a1_(a1),a2_(a2),a3_(a3),a4_(a4),a5_(a5),a6_(a6),a7_(a7)      {}};template <class Ch, class Tr, class T1,class T2,class T3,class T4,class T5,class T6,class T7>inlineBOOST_IO_STD basic_ostream<Ch, Tr>&operator << (BOOST_IO_STD basic_ostream<Ch, Tr>& os,             const group7<T1,T2,T3,T4,T5,T6,T7>& x){    os << x.a1_<< x.a2_<< x.a3_<< x.a4_<< x.a5_<< x.a6_<< x.a7_;     return os; }template <class T1,class T2,class T3,class T4,class T5,class T6,class T7,class T8>struct group8{    T1 a1_;    T2 a2_;    T3 a3_;    T4 a4_;    T5 a5_;    T6 a6_;    T7 a7_;    T8 a8_;    group8(T1 a1,T2 a2,T3 a3,T4 a4,T5 a5,T6 a6,T7 a7,T8 a8)      : a1_(a1),a2_(a2),a3_(a3),a4_(a4),a5_(a5),a6_(a6),a7_(a7),a8_(a8)      {}};template <class Ch, class Tr, class T1,class T2,class T3,class T4,class T5,class T6,class T7,class T8>inlineBOOST_IO_STD basic_ostream<Ch, Tr>&operator << (BOOST_IO_STD basic_ostream<Ch, Tr>& os,             const group8<T1,T2,T3,T4,T5,T6,T7,T8>& x){    os << x.a1_<< x.a2_<< x.a3_<< x.a4_<< x.a5_<< x.a6_<< x.a7_<< x.a8_;     return os; }template <class T1,class T2,class T3,class T4,class T5,class T6,class T7,class T8,class T9>struct group9{    T1 a1_;    T2 a2_;    T3 a3_;    T4 a4_;    T5 a5_;    T6 a6_;    T7 a7_;    T8 a8_;    T9 a9_;    group9(T1 a1,T2 a2,T3 a3,T4 a4,T5 a5,T6 a6,T7 a7,T8 a8,T9 a9)      : a1_(a1),a2_(a2),a3_(a3),a4_(a4),a5_(a5),a6_(a6),a7_(a7),a8_(a8),a9_(a9)      {}};template <class Ch, class Tr, class T1,class T2,class T3,class T4,class T5,class T6,class T7,class T8,class T9>inlineBOOST_IO_STD basic_ostream<Ch, Tr>&operator << (BOOST_IO_STD basic_ostream<Ch, Tr>& os,             const group9<T1,T2,T3,T4,T5,T6,T7,T8,T9>& x){    os << x.a1_<< x.a2_<< x.a3_<< x.a4_<< x.a5_<< x.a6_<< x.a7_<< x.a8_<< x.a9_;     return os; }template <class T1,class T2,class T3,class T4,class T5,class T6,class T7,class T8,class T9,class T10>struct group10{    T1 a1_;    T2 a2_;    T3 a3_;    T4 a4_;    T5 a5_;    T6 a6_;    T7 a7_;    T8 a8_;    T9 a9_;    T10 a10_;    group10(T1 a1,T2 a2,T3 a3,T4 a4,T5 a5,T6 a6,T7 a7,T8 a8,T9 a9,T10 a10)      : a1_(a1),a2_(a2),a3_(a3),a4_(a4),a5_(a5),a6_(a6),a7_(a7),a8_(a8),a9_(a9),a10_(a10)      {}};template <class Ch, class Tr, class T1,class T2,class T3,class T4,class T5,class T6,class T7,class T8,class T9,class T10>inlineBOOST_IO_STD basic_ostream<Ch, Tr>&operator << (BOOST_IO_STD basic_ostream<Ch, Tr>& os,             const group10<T1,T2,T3,T4,T5,T6,T7,T8,T9,T10>& x){    os << x.a1_<< x.a2_<< x.a3_<< x.a4_<< x.a5_<< x.a6_<< x.a7_<< x.a8_<< x.a9_<< x.a10_;     return os; }template <class T1,class T2>inlinegroup1<T1> group_head( group2<T1,T2> const& x){   return group1<T1> (x.a1_); }template <class T1,class T2>inlinegroup1<T2> group_last( group2<T1,T2> const& x){   return group1<T2> (x.a2_); }template <class T1,class T2,class T3>inlinegroup2<T1,T2> group_head( group3<T1,T2,T3> const& x){   return group2<T1,T2> (x.a1_,x.a2_); }template <class T1,class T2,class T3>inlinegroup1<T3> group_last( group3<T1,T2,T3> const& x){   return group1<T3> (x.a3_); }template <class T1,class T2,class T3,class T4>inlinegroup3<T1,T2,T3> group_head( group4<T1,T2,T3,T4> const& x){   return group3<T1,T2,T3> (x.a1_,x.a2_,x.a3_); }template <class T1,class T2,class T3,class T4>inlinegroup1<T4> group_last( group4<T1,T2,T3,T4> const& x)

⌨️ 快捷键说明

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