diff options
author | Clyne Sullivan <clyne@bitgloo.com> | 2022-11-15 07:35:07 -0500 |
---|---|---|
committer | Clyne Sullivan <clyne@bitgloo.com> | 2022-11-15 07:35:07 -0500 |
commit | a056c15dd3781b4f6bb89fdd738b14cafc00cd85 (patch) | |
tree | 1775a5913c7bc87563b6b4a29c63514cf15b4185 /lib/sol2/examples/source/overloading_with_fallback.cpp | |
parent | 1405d648b6264cfda7c46f5b251258335abaee83 (diff) | |
parent | 57013add5b7c524086272be7d395f9ec5109bde2 (diff) |
merge branch lib-cleanup into ui
Diffstat (limited to 'lib/sol2/examples/source/overloading_with_fallback.cpp')
-rw-r--r-- | lib/sol2/examples/source/overloading_with_fallback.cpp | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/lib/sol2/examples/source/overloading_with_fallback.cpp b/lib/sol2/examples/source/overloading_with_fallback.cpp deleted file mode 100644 index c14ed46..0000000 --- a/lib/sol2/examples/source/overloading_with_fallback.cpp +++ /dev/null @@ -1,43 +0,0 @@ -#define SOL_ALL_SAFETIES_ON 1 -#include <sol/sol.hpp> - -#include <iostream> - -int func_1(int value) { - return 20 + value; -} - -std::string func_2(std::string text) { - return "received: " + text; -} - -sol::variadic_results fallback(sol::this_state ts, sol::variadic_args args) { - sol::variadic_results r; - if (args.size() == 2) { - r.push_back({ ts, sol::in_place, args.get<int>(0) + args.get<int>(1) }); - } - else { - r.push_back({ ts, sol::in_place, 52 }); - } - return r; -} - -int main(int, char*[]) { - std::cout << "=== overloading with fallback ===" << std::endl; - - sol::state lua; - lua.open_libraries(); - - lua.set_function("f", sol::overload( - func_1, - func_2, - fallback - )); - - lua.script("print(f(1))"); // func_1 - lua.script("print(f('hi'))"); // func_2 - lua.script("print(f(22, 11))"); // fallback - lua.script("print(f({}))"); // fallback - - return 0; -} |