Я пытаюсь использовать библиотеку rmp_rpc
Rust для создания сервера, который принимает команды от клиента, написанного на Python. Я изменяю этот пример, чтобы достичь своей цели.
Как я могу обработать аргумент различного типа (целое число / строка / логическое значение) в операторе сопоставления, не получая сообщение «несоответствующие типы; ожидается, что i32, найден enum« rmp_rpc :: Value »»? Для каждого метода типы параметров могут быть разными.
fn handle_request(&mut self, method: &str, params: &[Value]) -> Self::RequestFuture {
match method {
"sum" => Methods::sum(params[0], params[1]),
"draw" => Methods::draw(params),
"conc" => Methods::concatenate(params[0], params[1])
}