Thrift IDL синтаксическая ошибка - принять и вернуть карту - PullRequest
0 голосов
/ 28 июня 2018

Я пишу комиссионный сервер. Предполагается, что одна из функций принимает map и возвращает map.

Ниже приведен мой командный файл:

service base{
    map<string, string>    method_1(1: map<string, double>)
}

service child extends base{
    map<string, string>    method_1(1: map<string, double>),
    void                    method_2(1:string path)
}

Там написано, что

ERROR: someservice.thrift:4] (last token was ')')
syntax error

и я понятия не имею, что не так в синтаксисе.

1 Ответ

0 голосов
/ 28 июня 2018

Вы должны назвать свои аргументы .

service base{
  map<string, string>    method_1(1: map<string, double> arg1)
}

service child extends base{
  map<string, string>    method_1(1: map<string, double> arg1),
  void                    method_2(1:string path)
}

Вы уже сделали правильно на method_2, аргументы которого (1:string path), но затем вы забыли его на method_1(1: map<string, double>) - этого недостаточно.

И, кстати, это абсолютно не связано с картами.

...