diff options
Diffstat (limited to 'deps/sol2/examples/source/tables.cpp')
-rw-r--r-- | deps/sol2/examples/source/tables.cpp | 65 |
1 files changed, 0 insertions, 65 deletions
diff --git a/deps/sol2/examples/source/tables.cpp b/deps/sol2/examples/source/tables.cpp deleted file mode 100644 index 5aab030..0000000 --- a/deps/sol2/examples/source/tables.cpp +++ /dev/null @@ -1,65 +0,0 @@ -#define SOL_ALL_SAFETIES_ON 1 -#include <sol/sol.hpp> - -#include <string> -#include <iostream> - -// this example shows how to read data in from a lua table - -int main() { - std::cout << "=== tables ===" << std::endl; - - sol::state lua; - // table used as an array - lua.script(R"(table1 = {"hello", "table"})"); - // table with a nested table and the key value syntax - lua.script(R"( - table2 = { - ["nestedTable"] = { - ["key1"] = "value1", - ["key2"]= "value2", - }, - ["name"] = "table2", - } - )"); - - - /* Shorter Syntax: */ - // using the values stored in table1 - /*std::cout << (std::string)lua["table1"][1] << " " - << (std::string)lua["table1"][2] << '\n'; - */ - // some retrieval of values from the nested table - // the cleaner way of doing things - // chain off the the get<>() / [] results - auto t2 = lua.get<sol::table>("table2"); - auto nestedTable = t2.get<sol::table>("nestedTable"); - // Alternatively: - //sol::table t2 = lua["table2"]; - //sol::table nestedTable = t2["nestedTable"]; - - std::string x = lua["table2"]["nestedTable"]["key2"]; - std::cout << "nested table: key1 : " << nestedTable.get<std::string>("key1") << ", key2: " - << x - << '\n'; - std::cout << "name of t2: " << t2.get<std::string>("name") << '\n'; - std::string t2name = t2["name"]; - std::cout << "name of t2: " << t2name << '\n'; - - /* Longer Syntax: */ - // using the values stored in table1 - std::cout << lua.get<sol::table>("table1").get<std::string>(1) << " " - << lua.get<sol::table>("table1").get<std::string>(2) << '\n'; - - // some retrieval of values from the nested table - // the cleaner way of doing things - std::cout << "nested table: key1 : " << nestedTable.get<std::string>("key1") << ", key2: " - // yes you can chain the get<>() results - << lua.get<sol::table>("table2").get<sol::table>("nestedTable").get<std::string>("key2") - << '\n'; - std::cout << "name of t2: " << t2.get<std::string>("name") << '\n'; - - std::cout << std::endl; - - return 0; -} |