определить const геттеры для джиннов

Я определяю интерфейс C ++ с джинн:

member = interface +c {
get_id(): string;
get_name(): string;
}

Моя унаследованная реализация использует методы получения const, т.е.

class MyMemeber: public Member {
private:
string id;
string name;
public:
string get_id() const override { return id; }
string get_name() const override { return name; }
}

Это явно не компилируется, из-за const приписывать. Могу я научить джинн сгенерировать базовый интерфейс с помощью const getter?

4

Решение

Это нигде не задокументировано, хотя с самого начала Джинни генерирует методы const (строка 295 из src / source / CppGenerator.scala). Просто добавьте const перед сигнатурой метода в файле idl:

member = interface +c {
const get_id(): string;
const get_name(): string;
}

Я думаю, что было бы неплохо провести тесты запросов для этой функции (и некоторые документы), в настоящее время проверяются только константные поля.

6

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]