diff options
author | bugaevskiy <[email protected]> | 2022-12-31 17:40:08 +0300 |
---|---|---|
committer | bugaevskiy <[email protected]> | 2022-12-31 17:40:08 +0300 |
commit | 030896f914b07ae082ccf0b6b00df926d22d2454 (patch) | |
tree | e520bd22d01faaf07ff303c49ad2fdfefa114f67 /contrib/restricted/boost/timer | |
parent | 014fdab1c4bb0fedea59974a6bb13ef3ec3b67cb (diff) |
Remove Boost metaproject
Diffstat (limited to 'contrib/restricted/boost/timer')
4 files changed, 0 insertions, 512 deletions
diff --git a/contrib/restricted/boost/timer/include/boost/timer/config.hpp b/contrib/restricted/boost/timer/include/boost/timer/config.hpp deleted file mode 100644 index a7c3d9d20e8..00000000000 --- a/contrib/restricted/boost/timer/include/boost/timer/config.hpp +++ /dev/null @@ -1,69 +0,0 @@ -// boost/timer/config.hpp -----------------------------------------------------------// - -// Copyright Beman Dawes 2003, 2006, 2011 - -// Distributed under the Boost Software License, Version 1.0. -// See http://www.boost.org/LICENSE_1_0.txt - -// See http://www.boost.org/libs/timer for documentation. - -#ifndef BOOST_TIMER_CONFIG_HPP -#define BOOST_TIMER_CONFIG_HPP - -#include <boost/config.hpp> - -#include <boost/system/api_config.hpp> - -// This header implements separate compilation features as described in -// http://www.boost.org/more/separate_compilation.html - -// enable dynamic or static linking as requested --------------------------------------// - -#if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_TIMER_DYN_LINK) -# if defined(BOOST_TIMER_SOURCE) -# define BOOST_TIMER_DECL BOOST_SYMBOL_EXPORT -# else -# define BOOST_TIMER_DECL BOOST_SYMBOL_IMPORT -# endif -#else -# define BOOST_TIMER_DECL -#endif - -// enable automatic library variant selection ----------------------------------------// - -#if !defined(BOOST_TIMER_SOURCE) && !defined(BOOST_ALL_NO_LIB) && !defined(BOOST_TIMER_NO_LIB) -// -// Set the name of our library, this will get undef'ed by auto_link.hpp -// once it's done with it: -// -#define BOOST_LIB_NAME boost_timer -// -// If we're importing code from a dll, then tell auto_link.hpp about it: -// -#if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_TIMER_DYN_LINK) -# define BOOST_DYN_LINK -#endif -// -// And include the header that does the work: -// -#include <boost/config/auto_link.hpp> - -// We also need to autolink to the Chrono library; even though -// it's not used in the interface, and no Chrono header is included, -// it's used in the implementation and is necessary in order to link - -#if !defined(BOOST_CHRONO_NO_LIB) - -#if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_CHRONO_DYN_LINK) -# define BOOST_DYN_LINK -#endif - -#define BOOST_LIB_NAME boost_chrono - -#include <boost/config/auto_link.hpp> - -#endif // !defined(BOOST_CHRONO_NO_LIB) - -#endif // auto-linking disabled - -#endif // BOOST_TIMER_CONFIG_HPP diff --git a/contrib/restricted/boost/timer/include/boost/timer/timer.hpp b/contrib/restricted/boost/timer/include/boost/timer/timer.hpp deleted file mode 100644 index 8bf996081d0..00000000000 --- a/contrib/restricted/boost/timer/include/boost/timer/timer.hpp +++ /dev/null @@ -1,129 +0,0 @@ -// boost/timer/timer.hpp -------------------------------------------------------------// - -// Copyright Beman Dawes 1994-2007, 2011 - -// Distributed under the Boost Software License, Version 1.0. -// See http://www.boost.org/LICENSE_1_0.txt - -#ifndef BOOST_TIMER_TIMER_HPP -#define BOOST_TIMER_TIMER_HPP - -#include <boost/timer/config.hpp> -#include <boost/cstdint.hpp> -#include <string> -#include <cstring> -#include <ostream> - -#include <boost/config/abi_prefix.hpp> // must be the last #include - -# if defined(_MSC_VER) -# pragma warning(push) // Save warning settings -# pragma warning(disable : 4251) // disable warning: class 'std::basic_string<_Elem,_Traits,_Ax>' -# endif // needs to have dll-interface... - -//--------------------------------------------------------------------------------------// - -namespace boost -{ -namespace timer -{ - class cpu_timer; - class auto_cpu_timer; - - typedef boost::int_least64_t nanosecond_type; - - struct cpu_times - { - nanosecond_type wall; - nanosecond_type user; - nanosecond_type system; - - void clear() { wall = user = system = 0; } - }; - - const short default_places = 6; - - BOOST_TIMER_DECL - std::string format(const cpu_times& times, short places, const std::string& format); - - BOOST_TIMER_DECL - std::string format(const cpu_times& times, short places = default_places); - -// cpu_timer -------------------------------------------------------------------------// - - class BOOST_TIMER_DECL cpu_timer - { - public: - - // constructor - cpu_timer() BOOST_NOEXCEPT { start(); } - - // observers - bool is_stopped() const BOOST_NOEXCEPT { return m_is_stopped; } - cpu_times elapsed() const BOOST_NOEXCEPT; // does not stop() - std::string format(short places, const std::string& format) const - { return ::boost::timer::format(elapsed(), places, format); } - std::string format(short places = default_places) const - { return ::boost::timer::format(elapsed(), places); } - // actions - void start() BOOST_NOEXCEPT; - void stop() BOOST_NOEXCEPT; - void resume() BOOST_NOEXCEPT; - - private: - cpu_times m_times; - bool m_is_stopped; - }; - -// auto_cpu_timer --------------------------------------------------------------------// - - class BOOST_TIMER_DECL auto_cpu_timer : public cpu_timer - { - public: - - // Explicit defaults for os are not provided to avoid including <iostream>, which has - // high costs even when the standard streams are not actually used. Explicit defaults - // for format are not provided to avoid order-of-dynamic-initialization issues with a - // std::string. - - explicit auto_cpu_timer(short places = default_places); // #1 - auto_cpu_timer(short places, const std::string& format); // #2 - explicit auto_cpu_timer(const std::string& format); // #3 - auto_cpu_timer(std::ostream& os, short places, - const std::string& format) // #4 - : m_places(places), m_os(&os), m_format(format) - { start(); } - explicit auto_cpu_timer(std::ostream& os, short places = default_places); // #5 - auto_cpu_timer(std::ostream& os, const std::string& format) // #6 - : m_places(default_places), m_os(&os), m_format(format) - { start(); } - - ~auto_cpu_timer(); - - // observers - // not particularly useful to users, but allow testing of constructor - // postconditions and ease specification of other functionality without resorting - // to "for exposition only" private members. - std::ostream& ostream() const { return *m_os; } - short places() const { return m_places; } - const std::string& format_string() const { return m_format; } - - // actions - void report(); - - private: - short m_places; - std::ostream* m_os; // stored as ptr so compiler can generate operator= - std::string m_format; - }; - -} // namespace timer -} // namespace boost - -# if defined(_MSC_VER) -# pragma warning(pop) // restore warning settings. -# endif - -#include <boost/config/abi_suffix.hpp> // pops abi_prefix.hpp pragmas - -#endif // BOOST_TIMER_TIMER_HPP diff --git a/contrib/restricted/boost/timer/src/auto_timers_construction.cpp b/contrib/restricted/boost/timer/src/auto_timers_construction.cpp deleted file mode 100644 index b23b54674f7..00000000000 --- a/contrib/restricted/boost/timer/src/auto_timers_construction.cpp +++ /dev/null @@ -1,46 +0,0 @@ -// boost auto_timers_construction.cpp ------------------------------------------------// - -// Copyright Beman Dawes 2007, 2011 - -// Distributed under the Boost Software License, Version 1.0. -// See http://www.boost.org/LICENSE_1_0.txt) - -// See http://www.boost.org/libs/timer for documentation. - -//--------------------------------------------------------------------------------------// - -// These constructors are in a separate file so that this translation unit will -// not be linked in except when one of the constructors is actually used. This -// is important since header <iostream> is required, and it incurs the cost of -// the standard stream objects even if they are not used. - -//--------------------------------------------------------------------------------------// - -// define BOOST_TIMER_SOURCE so that <boost/timer/config.hpp> knows -// the library is being built (possibly exporting rather than importing code) -#define BOOST_TIMER_SOURCE - -#include <boost/timer/timer.hpp> -#include <iostream> - -namespace -{ - // CAUTION: must be identical to same constant in cpu_timer.cpp - const std::string default_fmt(" %ws wall, %us user + %ss system = %ts CPU (%p%)\n"); -} - -namespace boost -{ - namespace timer - { - auto_cpu_timer::auto_cpu_timer(short places) // #1 - : m_places(places), m_os(&std::cout), m_format(default_fmt) { start(); } - - auto_cpu_timer::auto_cpu_timer(short places, const std::string& format) // #2 - : m_places(places), m_os(&std::cout), m_format(format) { start(); } - - auto_cpu_timer::auto_cpu_timer(const std::string& format) // #3 - : m_places(default_places), m_os(&std::cout), m_format(format) { start(); } - - } // namespace timer -} // namespace boost diff --git a/contrib/restricted/boost/timer/src/cpu_timer.cpp b/contrib/restricted/boost/timer/src/cpu_timer.cpp deleted file mode 100644 index 36b2ac40726..00000000000 --- a/contrib/restricted/boost/timer/src/cpu_timer.cpp +++ /dev/null @@ -1,268 +0,0 @@ -// boost cpu_timer.cpp ---------------------------------------------------------------// - -// Copyright Beman Dawes 1994-2006, 2011 - -// 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) - -// See http://www.boost.org/libs/timer for documentation. - -//--------------------------------------------------------------------------------------// - -// define BOOST_TIMER_SOURCE so that <boost/timer/config.hpp> knows -// the library is being built (possibly exporting rather than importing code) -#define BOOST_TIMER_SOURCE - -#include <boost/timer/timer.hpp> -#include <boost/chrono/chrono.hpp> -#include <boost/io/ios_state.hpp> -#include <boost/throw_exception.hpp> -#include <boost/cerrno.hpp> -#include <boost/predef.h> -#include <cstring> -#include <sstream> -#include <cassert> - -# if defined(BOOST_WINDOWS_API) -# include <windows.h> -# elif defined(BOOST_POSIX_API) -# include <unistd.h> -# include <sys/times.h> -# else -# error unknown API -# endif - -using boost::timer::nanosecond_type; -using boost::timer::cpu_times; - -namespace -{ - - void show_time(const cpu_times& times, - std::ostream& os, const std::string& fmt, short places) - // NOTE WELL: Will truncate least-significant digits to LDBL_DIG, which may - // be as low as 10, although will be 15 for many common platforms. - { - if (places > 9) - places = 9; - else if (places < 0) - places = boost::timer::default_places; - - boost::io::ios_flags_saver ifs(os); - boost::io::ios_precision_saver ips(os); - os.setf(std::ios_base::fixed, std::ios_base::floatfield); - os.precision(places); - - const double sec = 1000000000.0L; - nanosecond_type total = times.system + times.user; - double wall_sec = static_cast<double>(times.wall) / sec; - double total_sec = static_cast<double>(total) / sec; - - for (const char* format = fmt.c_str(); *format; ++format) - { - if (*format != '%' || !*(format+1) || !std::strchr("wustp", *(format+1))) - os << *format; // anything except % followed by a valid format character - // gets sent to the output stream - else - { - ++format; - switch (*format) - { - case 'w': - os << wall_sec; - break; - case 'u': - os << static_cast<double>(times.user) / sec; - break; - case 's': - os << static_cast<double>(times.system) / sec; - break; - case 't': - os << total_sec; - break; - case 'p': - os.precision(1); - if (wall_sec > 0.001L && total_sec > 0.001L) - os << (total_sec/wall_sec) * 100.0; - else - os << "n/a"; - os.precision(places); - break; - } - } - } - } - -# if defined(BOOST_POSIX_API) - - boost::int_least64_t tick_factor_() - { - boost::int_least64_t tf = ::sysconf( _SC_CLK_TCK ); - if( tf <= 0 ) return -1; - - tf = INT64_C(1000000000) / tf; // compute factor - if( tf == 0 ) tf = -1; - - return tf; - } - - boost::int_least64_t tick_factor() // multiplier to convert ticks - // to nanoseconds; -1 if unknown - { - static boost::int_least64_t tf = tick_factor_(); - return tf; - } - -# endif - - void get_cpu_times(boost::timer::cpu_times& current) - { - boost::chrono::duration<boost::int64_t, boost::nano> - x (boost::chrono::high_resolution_clock::now().time_since_epoch()); - current.wall = x.count(); - -# if defined(BOOST_WINDOWS_API) - -# if BOOST_PLAT_WINDOWS_DESKTOP || defined(__CYGWIN__) - FILETIME creation, exit; - if (::GetProcessTimes(::GetCurrentProcess(), &creation, &exit, - (LPFILETIME)¤t.system, (LPFILETIME)¤t.user)) - { - current.user *= 100; // Windows uses 100 nanosecond ticks - current.system *= 100; - } - else -# endif - { - current.system = current.user = boost::timer::nanosecond_type(-1); - } -# else - tms tm; - clock_t c = ::times(&tm); - if (c == static_cast<clock_t>(-1)) // error - { - current.system = current.user = boost::timer::nanosecond_type(-1); - } - else - { - current.system = boost::timer::nanosecond_type(tm.tms_stime + tm.tms_cstime); - current.user = boost::timer::nanosecond_type(tm.tms_utime + tm.tms_cutime); - boost::int_least64_t factor; - if ((factor = tick_factor()) != -1) - { - current.user *= factor; - current.system *= factor; - } - else - { - current.user = current.system = boost::timer::nanosecond_type(-1); - } - } -# endif - } - - // CAUTION: must be identical to same constant in auto_timers_construction.cpp - const std::string default_fmt(" %ws wall, %us user + %ss system = %ts CPU (%p%)\n"); - -} // unnamed namespace - -namespace boost -{ - namespace timer - { - // format ------------------------------------------------------------------------// - - BOOST_TIMER_DECL - std::string format(const cpu_times& times, short places, const std::string& fmt) - { - std::stringstream ss; - ss.exceptions(std::ios_base::badbit | std::ios_base::failbit); - show_time(times, ss, fmt, places); - return ss.str(); - } - - BOOST_TIMER_DECL - std::string format(const cpu_times& times, short places) - { - return format(times, places, default_fmt); - } - - // cpu_timer ---------------------------------------------------------------------// - - void cpu_timer::start() BOOST_NOEXCEPT - { - m_is_stopped = false; - get_cpu_times(m_times); - } - - void cpu_timer::stop() BOOST_NOEXCEPT - { - if (is_stopped()) - return; - m_is_stopped = true; - - cpu_times current; - get_cpu_times(current); - m_times.wall = (current.wall - m_times.wall); - m_times.user = (current.user - m_times.user); - m_times.system = (current.system - m_times.system); - } - - cpu_times cpu_timer::elapsed() const BOOST_NOEXCEPT - { - if (is_stopped()) - return m_times; - cpu_times current; - get_cpu_times(current); - current.wall -= m_times.wall; - current.user -= m_times.user; - current.system -= m_times.system; - return current; - } - - void cpu_timer::resume() BOOST_NOEXCEPT - { - if (is_stopped()) - { - cpu_times current (m_times); - start(); - m_times.wall -= current.wall; - m_times.user -= current.user; - m_times.system -= current.system; - } - } - - // auto_cpu_timer ----------------------------------------------------------------// - - auto_cpu_timer::auto_cpu_timer(std::ostream& os, short places) // #5 - : m_places(places), m_os(&os), m_format(default_fmt) - { - start(); - } - - void auto_cpu_timer::report() - { - show_time(elapsed(), ostream(), format_string(), places()); - } - - auto_cpu_timer::~auto_cpu_timer() - { - if (!is_stopped()) - { - stop(); // the sooner we stop(), the better -#ifndef BOOST_NO_EXCEPTIONS - try - { -#endif - report(); -#ifndef BOOST_NO_EXCEPTIONS - } - catch (...) // eat any exceptions - { - } -#endif - } - } - - } // namespace timer -} // namespace boost |