Closed tannergooding closed 4 years ago
CC. @mjsabby as an FYI
Still quite a bit more to expose before it is useable by itself (without falling back to invoking methods off Handle
), but this shows the general design and exposes a good set of APIs.
There were some places I thought you'd make them structs, like Value or Class, but this is after all supposed to feel like a more managed API so it seems alright.
I've tried to mirror how LLVM handles them. Most of these are handles in the C and are exclusively passed around in the C++ API as T*
. They often also have a inheritance hierarchy which means that class
is necessary and appropriate.
Going to merge this and work on continuing with the rest of the surface area.
This adds a proper managed wrapper that loosely mirrors the LLVM object-oriented API surface available in C++.