From bd3fe0cac583739bc0d7c4b5c8f301bb350abca0 Mon Sep 17 00:00:00 2001 From: Andy Belle-Isle Date: Fri, 30 Aug 2019 00:19:31 -0400 Subject: Renamed lib to deps so github will ignore it for language stats --- lib/sol2/include/sol/error.hpp | 89 ------------------------------------------ 1 file changed, 89 deletions(-) delete mode 100644 lib/sol2/include/sol/error.hpp (limited to 'lib/sol2/include/sol/error.hpp') diff --git a/lib/sol2/include/sol/error.hpp b/lib/sol2/include/sol/error.hpp deleted file mode 100644 index 5f2c750..0000000 --- a/lib/sol2/include/sol/error.hpp +++ /dev/null @@ -1,89 +0,0 @@ -// sol3 - -// The MIT License (MIT) - -// Copyright (c) 2013-2019 Rapptz, ThePhD and contributors - -// Permission is hereby granted, free of charge, to any person obtaining a copy of -// this software and associated documentation files (the "Software"), to deal in -// the Software without restriction, including without limitation the rights to -// use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -// the Software, and to permit persons to whom the Software is furnished to do so, -// subject to the following conditions: - -// The above copyright notice and this permission notice shall be included in all -// copies or substantial portions of the Software. - -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -#ifndef SOL_ERROR_HPP -#define SOL_ERROR_HPP - -#include "compatibility.hpp" - -#include -#include -#include - -namespace sol { - namespace detail { - struct direct_error_tag {}; - const auto direct_error = direct_error_tag{}; - - struct error_result { - int results; - const char* format_string; - std::array args_strings; - - error_result() : results(0), format_string(nullptr) { - } - - error_result(int results) : results(results), format_string(nullptr) { - } - - error_result(const char* fmt, const char* msg) : results(0), format_string(fmt) { - args_strings[0] = msg; - } - }; - - inline int handle_errors(lua_State* L, const error_result& er) { - if (er.format_string == nullptr) { - return er.results; - } - return luaL_error(L, er.format_string, er.args_strings[0], er.args_strings[1], er.args_strings[2], er.args_strings[3]); - } - } // namespace detail - - class error : public std::runtime_error { - private: - // Because VC++ is upsetting, most of the time! - std::string what_reason; - - public: - error(const std::string& str) : error(detail::direct_error, "lua: error: " + str) { - } - error(std::string&& str) : error(detail::direct_error, "lua: error: " + std::move(str)) { - } - error(detail::direct_error_tag, const std::string& str) : std::runtime_error(""), what_reason(str) { - } - error(detail::direct_error_tag, std::string&& str) : std::runtime_error(""), what_reason(std::move(str)) { - } - - error(const error& e) = default; - error(error&& e) = default; - error& operator=(const error& e) = default; - error& operator=(error&& e) = default; - - virtual const char* what() const noexcept override { - return what_reason.c_str(); - } - }; - -} // namespace sol - -#endif // SOL_ERROR_HPP -- cgit v1.2.3