It makes sense to update types enumeration using the system of types provided by GLib and GObject: https://en.wikipedia.org/wiki/GObject - [x] Update constant names to be `OIF_TYPE_*` in all languages - [x] Update type system to include char, int32, int64, etc. like described in the Wikipedia page linked above.