decimad / luabind-deboostified

Create Lua bindings for your C++ code easily - my improvements
http://www.vrac.iastate.edu/vancegroup/docs/luabind/
Other
71 stars 26 forks source link

Merge with Oberon00/luabind? #2

Closed tripleslash closed 10 years ago

tripleslash commented 10 years ago

Hey, I would like to ask if it's possible to merge this with Oberon00's luabind fork or rpavliks merged branch. I think he got some really useful additions like the std::function converter.

decimad commented 10 years ago

Hi, I only see those addition just now. I was under the impression that Ryans master branch was the most current branch there is. We're more or less in the situation that I'm basically reworking the whole thing while not changing its external look too much and merges get harder and harder (plus there's no feedback for me to acquire from both of them). However, porting converters should be simple enough. I just need to work out a list of stuff that they came up with that didnt land in Ryan's master branch. Function-Converter is on my list now.

decimad commented 10 years ago

Also one addition: I'd like not to port is the one covering smart pointers, ie. the fix with diverging counts when passing them around. I have reworked how c++ objects are stored in userdata in my local repo (basically they can now be stored in place directly with the userdata, where that was only possible for small objects before). I will rework how detected smart pointers are stored and thus will have means to implicitly cast between pointers to base and derived without having to resort to custom deleter hacks that will break on way or another. The former already works well in my local projects, however it breaks the lua side class functionality and thus I cannot commit before I made that work again. I could possibly provide a branch for anyone not interested in the lua side class functionality in the meantime.

decimad commented 10 years ago

There is now an adapted version of oberon's converter for functional types included in the latest master plus 2 simple test cases in test_policies.

tripleslash commented 10 years ago

Hey, thats really nice! I think Oberons master branch is the most recent one currently (also merged with rpavliks master, see https://github.com/Oberon00/luabind/commit/c7a4adaeb56b7f577c9399a56513e5b24db69275). Would be cool to have everything (at least the major fixes/improvements) in one place, since Oberon made some pretty nice changes.

tripleslash commented 10 years ago

For everyone else who wants some smart_ptr support in the meanwhile: I took oberons deleter workaround and removed all boost dependencies and converted it: http://pastebin.com/fjZLbJ8g