forked from boostorg/detail
Make <boost/detail/iomanip.hpp> include <iomanip> and put the <iomanip> functions
in the boost::detail namespace if not on clang- or intel-linux. [SVN r68165]
This commit is contained in:
@@ -8,15 +8,19 @@
|
|||||||
#ifndef BOOST_DETAIL_IOMANIP_HPP
|
#ifndef BOOST_DETAIL_IOMANIP_HPP
|
||||||
#define BOOST_DETAIL_IOMANIP_HPP
|
#define BOOST_DETAIL_IOMANIP_HPP
|
||||||
|
|
||||||
#include <ios>
|
#include <boost/config.hpp>
|
||||||
#include <istream>
|
|
||||||
#include <ostream>
|
|
||||||
|
|
||||||
namespace boost {
|
#if (defined(BOOST_CLANG) || defined(BOOST_INTEL_LINUX)) && \
|
||||||
namespace detail {
|
defined(BOOST_GNU_STDLIB)
|
||||||
|
#include <ios>
|
||||||
|
#include <istream>
|
||||||
|
#include <ostream>
|
||||||
|
|
||||||
//[resetiosflags
|
namespace boost {
|
||||||
class resetiosflags_manip {
|
namespace detail {
|
||||||
|
|
||||||
|
//[resetiosflags
|
||||||
|
class resetiosflags_manip {
|
||||||
private:
|
private:
|
||||||
std::ios_base::fmtflags mask;
|
std::ios_base::fmtflags mask;
|
||||||
|
|
||||||
@@ -41,15 +45,15 @@ class resetiosflags_manip {
|
|||||||
os.unsetf(x.mask);
|
os.unsetf(x.mask);
|
||||||
return os;
|
return os;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
inline resetiosflags_manip resetiosflags (std::ios_base::fmtflags mask) {
|
inline resetiosflags_manip resetiosflags (std::ios_base::fmtflags mask) {
|
||||||
return resetiosflags_manip(mask);
|
return resetiosflags_manip(mask);
|
||||||
}
|
}
|
||||||
//]
|
//]
|
||||||
|
|
||||||
//[setiosflags
|
//[setiosflags
|
||||||
class setiosflags_manip {
|
class setiosflags_manip {
|
||||||
private:
|
private:
|
||||||
std::ios_base::fmtflags mask;
|
std::ios_base::fmtflags mask;
|
||||||
|
|
||||||
@@ -72,15 +76,15 @@ class setiosflags_manip {
|
|||||||
os.setf(x.mask);
|
os.setf(x.mask);
|
||||||
return os;
|
return os;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
inline setiosflags_manip setiosflags (std::ios_base::fmtflags mask) {
|
inline setiosflags_manip setiosflags (std::ios_base::fmtflags mask) {
|
||||||
return setiosflags_manip(mask);
|
return setiosflags_manip(mask);
|
||||||
}
|
}
|
||||||
//]
|
//]
|
||||||
|
|
||||||
//[setbase
|
//[setbase
|
||||||
class setbase_manip {
|
class setbase_manip {
|
||||||
private:
|
private:
|
||||||
int base;
|
int base;
|
||||||
|
|
||||||
@@ -127,16 +131,16 @@ class setbase_manip {
|
|||||||
return os;
|
return os;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
inline setbase_manip setbase (int base) {
|
inline setbase_manip setbase (int base) {
|
||||||
return setbase_manip(base);
|
return setbase_manip(base);
|
||||||
}
|
}
|
||||||
//]
|
//]
|
||||||
|
|
||||||
//[setfill
|
//[setfill
|
||||||
template<class CharT>
|
template<class CharT>
|
||||||
class setfill_manip {
|
class setfill_manip {
|
||||||
private:
|
private:
|
||||||
CharT fill;
|
CharT fill;
|
||||||
|
|
||||||
@@ -150,16 +154,16 @@ class setfill_manip {
|
|||||||
os.fill(x.fill);
|
os.fill(x.fill);
|
||||||
return os;
|
return os;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
template<class CharT>
|
template<class CharT>
|
||||||
inline setfill_manip<CharT> setfill (CharT c) {
|
inline setfill_manip<CharT> setfill (CharT c) {
|
||||||
return setfill_manip<CharT>(c);
|
return setfill_manip<CharT>(c);
|
||||||
}
|
}
|
||||||
//]
|
//]
|
||||||
|
|
||||||
//[setprecision
|
//[setprecision
|
||||||
class setprecision_manip {
|
class setprecision_manip {
|
||||||
private:
|
private:
|
||||||
int n;
|
int n;
|
||||||
|
|
||||||
@@ -182,15 +186,15 @@ class setprecision_manip {
|
|||||||
os.precision(x.n);
|
os.precision(x.n);
|
||||||
return os;
|
return os;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
inline setprecision_manip setprecision (int n_) {
|
inline setprecision_manip setprecision (int n_) {
|
||||||
return setprecision_manip(n_);
|
return setprecision_manip(n_);
|
||||||
}
|
}
|
||||||
//]
|
//]
|
||||||
|
|
||||||
//[setw
|
//[setw
|
||||||
class setw_manip {
|
class setw_manip {
|
||||||
private:
|
private:
|
||||||
int n;
|
int n;
|
||||||
|
|
||||||
@@ -211,15 +215,32 @@ class setw_manip {
|
|||||||
os.width(x.n);
|
os.width(x.n);
|
||||||
return os;
|
return os;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
inline setw_manip setw (int n_) {
|
inline setw_manip setw (int n_) {
|
||||||
return setw_manip(n_);
|
return setw_manip(n_);
|
||||||
}
|
}
|
||||||
//]
|
//]
|
||||||
|
|
||||||
} // detail
|
} // detail
|
||||||
} // boost
|
} // boost
|
||||||
|
|
||||||
|
#else
|
||||||
|
#include <iomanip>
|
||||||
|
|
||||||
|
namespace boost {
|
||||||
|
namespace detail {
|
||||||
|
|
||||||
|
using ::std::resetiosflags;
|
||||||
|
using ::std::setiosflags;
|
||||||
|
using ::std::setbase;
|
||||||
|
using ::std::setfill;
|
||||||
|
using ::std::setprecision;
|
||||||
|
using ::std::setw;
|
||||||
|
|
||||||
|
} // detail
|
||||||
|
} // boost
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif // BOOST_DETAIL_IOMANIP_HPP
|
#endif // BOOST_DETAIL_IOMANIP_HPP
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user