Today the C header is successfully processed for the Julia (dss-extensions/OpenDSSDirect.jl#58), MATLAB (built-in) and Python (through pycparser/CFFI) interfaces. All of them seem to handle enumeration types without issues, automatically. The .NET interface can handle it with some changes (use MarshalAs), and JavaCPP (planned for a future JVM release) also supports enums (both plain and C++ typed-enums).
This complements the API part of #45 (which also proposes using scoped enums throughout the internal code too).
To do:
This should be started right after the new base for 0.11.x code is merged, preferably in a dedicated branch as it affects mainly the API code. Some enums can be added to the internal code too, if missing.
Today the C header is successfully processed for the Julia (dss-extensions/OpenDSSDirect.jl#58), MATLAB (built-in) and Python (through pycparser/CFFI) interfaces. All of them seem to handle enumeration types without issues, automatically. The .NET interface can handle it with some changes (use
MarshalAs), and JavaCPP (planned for a future JVM release) also supports enums (both plain and C++ typed-enums).This complements the API part of #45 (which also proposes using scoped enums throughout the internal code too).
To do:
This should be started right after the new base for 0.11.x code is merged, preferably in a dedicated branch as it affects mainly the API code. Some enums can be added to the internal code too, if missing.