Commit Graph

2246 Commits

Author SHA1 Message Date
ThePhD
a59320787f We apparently need to link in dl (dladdr) manually. 2013-12-11 23:43:33 -05:00
ThePhD
2b4f9cc24c Meh, who needs "eval". It's technically right, but I think evaluate might be for shorter lines and stuff... who knows. 2013-12-11 18:16:52 -05:00
ThePhD
0da6ff4690 Test cases for tables and the opening of libraries. 2013-12-11 18:14:12 -05:00
ThePhD
e9d90d617c Well, -llua5.2. At least it's more explicit. 2013-12-11 13:26:54 -05:00
ThePhD
9204a019ba Checking once more if we need additional library paths... 2013-12-11 13:22:05 -05:00
ThePhD
029bd91e23 Weeee, = instead of -! 2013-12-11 13:17:14 -05:00
ThePhD
b77fd29f37 ~Installed~ 2013-12-11 13:14:34 -05:00
ThePhD
e6a9688b80 If this works, Ninja is stupid. 2013-12-11 12:51:10 -05:00
ThePhD
459bbcaba0 GCC is lame. But at least it's building now. Fixed up the build.ninja and made all tests pass (exceptions weren't being thrown because of lua_pcall: use lua_call to let exceptions propogate naturally). 2013-12-11 12:42:00 -05:00
Dave Snider
0482faa2e2 add note about running locally. fixes #68 2013-12-11 09:37:38 -08:00
ThePhD
bcf4b9b08f Have I mentioned I hate GCC? I hate GCC. 2013-12-11 11:56:34 -05:00
ThePhD
350f430d74 Improved tests, added a build.ninja for TeamCity, and fixed formatting again to work with Rapptz's style. 2013-12-11 11:18:13 -05:00
ThePhD
dd63621453 Added some catch tests and a basic nil getter. 2013-12-11 08:32:27 -05:00
ThePhD
e7f8ec9e5c CATCH for tests. 2013-12-11 06:38:25 -05:00
ThePhD
a5d14580b1 Adding sol.scratch.cpp, and will also add CATCH for tests. 2013-12-11 06:34:18 -05:00
ThePhD
fc19896815 Some changes to make sure builds go through on 64-bit. 2013-12-11 06:10:30 -05:00
Rapptz
9e47ec6b06 Merge branch 'master' of https://github.com/ThePhD/sol into ThePhD 2013-12-09 17:20:21 -05:00
ThePhD
e53c47f7b1 Okay, so now it compiles without errors or warnings and works pretty well. This should be the last piece necessary for full working conformance. Yey~ 2013-12-09 17:01:52 -05:00
Rapptz
404dc641a9 Merge branch 'master' of https://github.com/ThePhD/sol into ThePhD 2013-12-09 14:27:39 -05:00
ThePhD
19d01ecd1d Okay, cleaned up includes and now the newest feature:
STATEFUL FUNCTIONS!
Any stateful function now works and is properly cleaned up, thanks to some additional metatables that are associated with the function values.
This lays the ground work for class bindings, but that's a far off dream. For now, table retrieval and `operator[]` is what's for dinner.
2013-12-09 14:12:38 -05:00
ThePhD
21142e7e7d Removed std::unordered_map storage on tables since they were getting deleted anyways.
Memory leaks are currently present: will have to figure out how to patch those up.
2013-12-09 12:05:17 -05:00
Rapptz
599673150e Remove construction from a filename as it's pretty useless 2013-12-09 00:22:37 -05:00
ThePhD
51f7010363 Additional nullptr's for GCC's whining ass, and more reinterpret casts. Also for GCC's whiny ass. 2013-12-09 00:04:37 -05:00
ThePhD
2d2ad59492 Well, now that we've optimized l-values, the only reason for explicit_lua_func and member pointers is for it to actually store it. To we store a T now, isntead of a T*. 2013-12-09 00:01:28 -05:00
ThePhD
a66ceb92f7 GCC is retarded. Well, mostly retarded, anyhow... 2013-12-08 23:51:18 -05:00
ThePhD
288fd1319c Ranged for loop. Because ~~clean code~~. 2013-12-08 23:42:20 -05:00
ThePhD
854cbeef71 Fixing style to fit @Rapptz's usual no-tabs, four-space-indents, template<> no-spaces stuff. 2013-12-08 23:09:07 -05:00
ThePhD
49c73c4725 Heavy optimizations to stateless and lvalue member functions allow us to make many of the general use cases of lambdas and member function pointers work out.
This will be useful. The next fix has tobe in table.hpp in the std::false_type ... specialization of the private `set_fx` function.
2013-12-08 23:05:03 -05:00
Daniel Oaks
8bd1938c8b html logo_only is now an option 2013-12-08 23:18:43 +10:00
Daniel Oaks
22df9d33e8 Actually, it's nicer with no text above the logo 2013-12-08 22:45:12 +10:00
Daniel Oaks
b02048a903 Respect html_logo, and throw it in the sidebar, fixes #24 2013-12-08 22:17:36 +10:00
ThePhD
6d6dd3db5c Adding mingw libraries (liblua.a) to gitignore 2013-12-07 21:17:07 -05:00
ThePhD
8c023c54a5 This properly pushes a local function to the table. However, we're having issues because the tables are being constructed without an attachment to sol::state, making it impossible to keep std::shared_ptr's alive that contain the virtual interfaces necessary to handle those goddamn lambdas. 2013-12-07 21:16:23 -05:00
Dave Snider
1e2ec72b10 partial fix for #64 2013-12-03 19:47:56 -08:00
Rapptz
a4a4d21376 Allow polymorphic object class to handle sol::function 2013-12-03 01:20:31 -05:00
Rapptz
101e80c913 Remove unused unordered_map 2013-12-02 23:59:44 -05:00
Rapptz
6ff859ba29 Stylistic changes to match the rest of the code 2013-12-02 23:33:23 -05:00
Danny
5455efe83c Merge pull request #1 from ThePhD/master
Function binding both ways, and return type support
2013-12-02 18:42:31 -08:00
ThePhD
45000177c3 Alright, this should fix the GCC build errors! Everything should work as advertised. A Sol for the Mun: go, go! 2013-12-02 21:39:21 -05:00
ThePhD
86b16dc61b GCC is still not compiling, complaining about detail::ltr_pop and not being able to find a proper overload. I'm not sure why it's complaining, I'll have to look in more detail soon. 2013-12-02 20:12:25 -05:00
ThePhD
17ec059c32 Move ltr_pop down, so that GCC can see the right instantiations of the functions it needs. 2013-12-02 19:34:10 -05:00
ThePhD
bf2404bdfd More style fixes and more attempts to make sure this compiles between GCC and MSVC. 2013-12-02 19:15:23 -05:00
ThePhD
29f171e124 Style fixes and fixes for templates not usually used by MSVC (broken two-phase lookup killing me here. :c)
Member functions now work as well for set_function. If performance of `new`ing a type ever becomes too large, we can create a custom allocator for the std::shared_ptr's of the types. We can also up-front allocate for the unordered_map as well.
2013-12-02 18:11:25 -05:00
ThePhD
be98a4fdd4 Reformatted to look like Rapptz's style. The following code sample work without error in VS 2013: http://pastebin.com/s4Jbjnht
It'll be up to @Rapptz's to make further changes to make sure GCC compiles, but the core of the functionality is there and my work is essentially done.
Class bindings are up next, but really I don't want to even touch those. :c
2013-12-02 15:42:03 -05:00
ThePhD
f67b21b525 The solution technically works, but there's some stack corruption going on somewhere that I can quite track down, even when calling a void function with no parameters. I'll have to look into it... 2013-12-02 14:22:51 -05:00
ThePhD
cea7e9be64 Updated gitignore for test files 2013-12-01 19:00:01 -05:00
ThePhD
ebf4908c27 Formatting corrections 2013-12-01 18:57:28 -05:00
ThePhD
9f79e8c573 function header with addition to sol.hpp so that a person can do function invocations on lua functions without explicitly adding sol/functions.hpp 2013-12-01 18:15:26 -05:00
ThePhD
24c76d3e03 Added VS2013 files to gitignore. 2013-12-01 17:27:17 -05:00
Rapptz
1f22cdd19e Add size function to query table size 2013-11-30 21:17:15 -05:00