KrakenKit
KrakenKit copied to clipboard
C and C++ port
Hi, I think a C and a C++ API wrapper (better yet, a complete rewrite) would be useful. I'd be happy to collaborate.
I'd say complete rewrite. That means quite a lot has to be gutted. Do you know of a stable alternative to:
- [ ] AFNetworking
- [ ] Mantle (we can write our own, but still).
- [ ] Unit Testing (again, not necessary with XCTest, but still would be nice to replace Specta/Expecta)
I'd also like to have as little work to do as possible on the foundation types (especially containers), so it should be in C++
Well, I think I'll be able to make a C and a C++ wrapper as well. As for the alternative libraries: AFNetworking can be replaced by libcurl, Mantle in C++ is essntially Boost. Unit testing is a different question, I'll see the options.
Alright. I've reorganized the project's structure to make it easier to write a C and C++ API with an Objective-C overlay. Give me a second to make you a collaborator.
Done! Any thoughts on an API structure? I was thinking about remaking NSOperation with pthreads or std::threads. I think boost might be too big of a dependency, seeing as all we'd really need is libJSON and to have every class expose a static map of keys to function pointers
Well, I haven't yet looked into the API structure too deeply, but I have written a JSON parser for C (libjsonz). I'd be more than happy to drop Boost as a dependency as well.
Sounds good. If you'd like to add it as a submodule, be my guest. Probably put it in src/External/
Added libjsonz as a submodule under src/extern, and created directories src/c and src/cpp.