Some places I used optionals just because the translate c made signatures with optional pointers, but it seems like
- some methods always return a pointer
- even when it is uninitialized it returns a value that would segfault (and I can't check that)
This would avoid some checks both inside the function and for the caller