ResponseSuccess отдала по-умолчанию json {ok: true, data: {}}
use serde::{Serialize};
#[derive(Serialize)]
pub struct ResponseSuccess<T> {
pub ok: bool,
pub data: T,
}
#[derive(Serialize)]
pub struct Empty {}
impl<T> Default for ResponseSuccess<T> {
fn default() -> Self {
ResponseSuccess {
ok: true,
data: Empty {}, // ошибка expected type parameter `T`, found struct `....::Empty`
}
}
}
Но получаю ошибку. Как это можно пофиксить?
можно вызвать T::default() например
или реализовать Default только для ResponseSuccess<Empty>. Или хранить в поле что вроде Either<T, Empty>...
Спасибо за идею, вроде пофиксил и работает https://play.rust-lang.org/?version=stable&mode=debug&edition=2018&gist=7c77081bcdbcfee2afe9ed4fb5d2dcf7
отлично 👍
Обсуждают сегодня