2019-05-22 07:17:31 +08:00
|
|
|
#define SOL_ALL_SAFETIES_ON 1
|
2019-07-04 23:16:03 +08:00
|
|
|
#include <sol/sol.hpp>
|
2018-11-10 06:36:27 +08:00
|
|
|
|
2019-07-05 02:09:37 +08:00
|
|
|
#include <iostream>
|
|
|
|
|
2018-11-10 06:36:27 +08:00
|
|
|
int main() {
|
|
|
|
|
|
|
|
sol::state lua;
|
|
|
|
lua["bark"] = 50;
|
|
|
|
sol::optional<int> x = lua["bark"];
|
|
|
|
// x will have a value
|
2019-07-05 02:09:37 +08:00
|
|
|
if (x) {
|
2019-07-05 02:48:10 +08:00
|
|
|
std::cout << "x has no value, as expected" << std::endl;
|
2019-07-05 02:09:37 +08:00
|
|
|
}
|
|
|
|
else {
|
2019-07-05 02:48:10 +08:00
|
|
|
return -1;
|
2019-07-05 02:09:37 +08:00
|
|
|
}
|
2018-11-10 06:36:27 +08:00
|
|
|
|
2019-05-27 01:32:28 +08:00
|
|
|
lua["bark"] = sol::lua_nil;
|
2018-11-10 06:36:27 +08:00
|
|
|
sol::optional<int> y = lua["bark"];
|
|
|
|
// y will not have a value
|
2019-07-05 02:20:48 +08:00
|
|
|
if (y) {
|
2019-07-05 02:09:37 +08:00
|
|
|
return -1;
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
std::cout << "y has no value, as expected" << std::endl;
|
|
|
|
}
|
2018-11-10 06:36:27 +08:00
|
|
|
|
|
|
|
return 0;
|
|
|
|
}
|