diff --git a/include/chaiscript/dispatchkit/bootstrap.hpp b/include/chaiscript/dispatchkit/bootstrap.hpp index f6c2483..59eb1c5 100644 --- a/include/chaiscript/dispatchkit/bootstrap.hpp +++ b/include/chaiscript/dispatchkit/bootstrap.hpp @@ -98,7 +98,9 @@ namespace chaiscript template std::string to_string(Input i) { - return boost::lexical_cast(i); + std::stringstream ss; + ss << i; + return ss.str(); } @@ -109,7 +111,10 @@ namespace chaiscript template Input parse_string(const std::string &i) { - return boost::lexical_cast(i); + std::stringstream ss(i); + Input t; + ss >> t; + return t; } diff --git a/include/chaiscript/dispatchkit/dispatchkit.hpp b/include/chaiscript/dispatchkit/dispatchkit.hpp index b9afa54..ecb4de4 100644 --- a/include/chaiscript/dispatchkit/dispatchkit.hpp +++ b/include/chaiscript/dispatchkit/dispatchkit.hpp @@ -11,8 +11,6 @@ #include #include #include -#include -#include #include #include #include diff --git a/include/chaiscript/dispatchkit/dynamic_cast_conversion.hpp b/include/chaiscript/dispatchkit/dynamic_cast_conversion.hpp index 054dcd4..1bb5447 100644 --- a/include/chaiscript/dispatchkit/dynamic_cast_conversion.hpp +++ b/include/chaiscript/dispatchkit/dynamic_cast_conversion.hpp @@ -11,7 +11,6 @@ #include "boxed_value.hpp" #include "boxed_cast_helper.hpp" #include "bad_boxed_cast.hpp" -#include namespace chaiscript { diff --git a/include/chaiscript/dispatchkit/handle_return.hpp b/include/chaiscript/dispatchkit/handle_return.hpp index 828d01e..18f63cc 100644 --- a/include/chaiscript/dispatchkit/handle_return.hpp +++ b/include/chaiscript/dispatchkit/handle_return.hpp @@ -11,7 +11,6 @@ #include "boxed_number.hpp" #include "type_info.hpp" #include -#include #include #include diff --git a/include/chaiscript/dispatchkit/proxy_functions_detail.hpp b/include/chaiscript/dispatchkit/proxy_functions_detail.hpp index ae697d2..7d93393 100644 --- a/include/chaiscript/dispatchkit/proxy_functions_detail.hpp +++ b/include/chaiscript/dispatchkit/proxy_functions_detail.hpp @@ -19,7 +19,6 @@ #include "type_info.hpp" #include "handle_return.hpp" #include -#include #include #include diff --git a/include/chaiscript/dispatchkit/register_function.hpp b/include/chaiscript/dispatchkit/register_function.hpp index ad88586..8d7efae 100644 --- a/include/chaiscript/dispatchkit/register_function.hpp +++ b/include/chaiscript/dispatchkit/register_function.hpp @@ -11,8 +11,6 @@ #include "bind_first.hpp" #include #include -#include -#include namespace chaiscript { @@ -103,7 +101,7 @@ namespace chaiscript template Proxy_Function fun(T t) { - return dispatch::detail::Fun_Helper::value, boost::function_types::is_member_function_pointer::value>::go(t); + return dispatch::detail::Fun_Helper::value, std::is_member_function_pointer::value>::go(t); } /// \brief Creates a new Proxy_Function object from a free function, member function or data member and binds the first parameter of it diff --git a/include/chaiscript/language/chaiscript_common.hpp b/include/chaiscript/language/chaiscript_common.hpp index 55d0203..bc00f5c 100644 --- a/include/chaiscript/language/chaiscript_common.hpp +++ b/include/chaiscript/language/chaiscript_common.hpp @@ -71,10 +71,7 @@ namespace chaiscript std::vector call_stack; eval_error(const std::string &t_why, const File_Position &t_where, const std::string &t_fname) throw() : - std::runtime_error("Error: \"" + t_why + "\" " + - (t_fname != "__EVAL__" ? ("in '" + t_fname + "' ") : "during evaluation ") + - + "at (" + boost::lexical_cast(t_where.line) + ", " + - boost::lexical_cast(t_where.column) + ")"), + std::runtime_error(format(t_why, t_where, t_fname)), reason(t_why), start_position(t_where), end_position(t_where), filename(t_fname) { } @@ -84,6 +81,17 @@ namespace chaiscript {} virtual ~eval_error() throw() {} + + private: + static std::string format(const std::string &t_why, const File_Position &t_where, const std::string &t_fname) + { + std::stringstream ss; + ss << "Error: \"" << t_why << "\" " << + (t_fname != "__EVAL__" ? ("in '" + t_fname + "' ") : "during evaluation ") << + "at (" << t_where.line << ", " << + t_where.column + ")"; + return ss.str(); + } }; /**