Преобразование типобезопасного перечисления C++ в перечисление C# с помощью swigC#

Место общения программистов C#
Anonymous
Преобразование типобезопасного перечисления C++ в перечисление C# с помощью swig

Сообщение Anonymous »

У меня есть библиотека с типобезопасными перечислениями в следующей форме:
struct MyEnum {
enum Value { One, Two, Three };

MyEnum() : value(-1) {}
MyEnum(Value v) : value(v) {}

Value value;
};

И я хочу, чтобы он игнорировал структуру и просто преобразовывал ее в обычное перечисление C#, используя swig, вот так:
public enum MyEnum { One, Two, Three }

До сих пор я пробовал использовать %rename с функцией плоского вложения, но ничего не получалось.
%{
#include "MyEnum.h"
%}
%feature("flatnested");
%rename(MyEnum) MyEnum::Value;
%include "MyEnum.h"


Подробнее здесь: https://stackoverflow.com/questions/789 ... using-swig

Вернуться в «C#»