![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /proc/self/root/usr/include/boost/property_tree/detail/ |
Upload File : |
// ---------------------------------------------------------------------------- // Copyright (C) 2002-2006 Marcin Kalicinski // // 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) // // For more information, see www.boost.org // ---------------------------------------------------------------------------- #ifndef BOOST_PROPERTY_TREE_DETAIL_FILE_PARSER_ERROR_HPP_INCLUDED #define BOOST_PROPERTY_TREE_DETAIL_FILE_PARSER_ERROR_HPP_INCLUDED #include <boost/property_tree/ptree.hpp> #include <string> namespace boost { namespace property_tree { //! File parse error class file_parser_error: public ptree_error { public: /////////////////////////////////////////////////////////////////////// // Construction & destruction // Construct error file_parser_error(const std::string &msg, const std::string &file, unsigned long l) : ptree_error(format_what(msg, file, l)), m_message(msg), m_filename(file), m_line(l) { } ~file_parser_error() throw() // gcc 3.4.2 complains about lack of throw specifier on compiler // generated dtor { } /////////////////////////////////////////////////////////////////////// // Data access // Get error message (without line and file - use what() to get // full message) std::string message() const { return m_message; } // Get error filename std::string filename() const { return m_filename; } // Get error line number unsigned long line() const { return m_line; } private: std::string m_message; std::string m_filename; unsigned long m_line; // Format error message to be returned by std::runtime_error::what() static std::string format_what(const std::string &msg, const std::string &file, unsigned long l) { std::stringstream stream; stream << (file.empty() ? "<unspecified file>" : file.c_str()); if (l > 0) stream << '(' << l << ')'; stream << ": " << msg; return stream.str(); } }; } } #endif