summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/sol2/sol/string_shim.hpp
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2020-11-15 03:53:47 +1100
committer Vas Crabb <vas@vastheman.com>2020-11-15 03:53:47 +1100
commit55b8ca317ab1f77850f498c1523355e1f5dd8d03 (patch)
treebada7948236b18684609f47024cc9ca227a5ef89 /3rdparty/sol2/sol/string_shim.hpp
parent4db7f0439c3b841eb07d2320e39be38269e6cd56 (diff)
-Switch to building MAME as C++17.
* Updated sol2 to 3.2.2 * Updated pugixml to 1.10 * Increased minimum clang version to 6 * Cleaned up some stuff that can use new features
Diffstat (limited to '3rdparty/sol2/sol/string_shim.hpp')
-rw-r--r--3rdparty/sol2/sol/string_shim.hpp88
1 files changed, 0 insertions, 88 deletions
diff --git a/3rdparty/sol2/sol/string_shim.hpp b/3rdparty/sol2/sol/string_shim.hpp
deleted file mode 100644
index 73aa81646fb..00000000000
--- a/3rdparty/sol2/sol/string_shim.hpp
+++ /dev/null
@@ -1,88 +0,0 @@
-// The MIT License (MIT)
-
-// Copyright (c) 2013-2016 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_STRING_SHIM_HPP
-#define SOL_STRING_SHIM_HPP
-
-#include <cstddef>
-#include <string>
-
-namespace sol {
- namespace string_detail {
- struct string_shim {
- std::size_t s;
- const char* p;
-
- string_shim(const std::string& r) : string_shim(r.data(), r.size()) {}
- string_shim(const char* ptr) : string_shim(ptr, std::char_traits<char>::length(ptr)) {}
- string_shim(const char* ptr, std::size_t sz) : s(sz), p(ptr) {}
-
- static int compare(const char* lhs_p, std::size_t lhs_sz, const char* rhs_p, std::size_t rhs_sz) {
- int result = std::char_traits<char>::compare(lhs_p, rhs_p, lhs_sz < rhs_sz ? lhs_sz : rhs_sz);
- if (result != 0)
- return result;
- if (lhs_sz < rhs_sz)
- return -1;
- if (lhs_sz > rhs_sz)
- return 1;
- return 0;
- }
-
- const char* c_str() const {
- return p;
- }
-
- const char* data() const {
- return p;
- }
-
- std::size_t size() const {
- return s;
- }
-
- bool operator==(const string_shim& r) const {
- return compare(p, s, r.data(), r.size()) == 0;
- }
-
- bool operator==(const char* r) const {
- return compare(r, std::char_traits<char>::length(r), p, s) == 0;
- }
-
- bool operator==(const std::string& r) const {
- return compare(r.data(), r.size(), p, s) == 0;
- }
-
- bool operator!=(const string_shim& r) const {
- return !(*this == r);
- }
-
- bool operator!=(const char* r) const {
- return !(*this == r);
- }
-
- bool operator!=(const std::string& r) const {
- return !(*this == r);
- }
- };
- }
-}
-
-#endif // SOL_STRING_SHIM_HPP