繁体   English   中英

具有泛型参数类型的函数

[英]Function with a generic parameter type

我正在使用 Rocket Web 框架,我需要创建一个具有泛型参数类型参数的函数:

use rocket_contrib::json::{Json, JsonValue};

fn bluid_succes_response<T>(data: T) ->  JsonValue  { 
    json!(data) 
}

这是我的错误:

the trait `dataStructures::parameters_structures::_::_serde::Serialize` is not implemented for `T`

我如何为像T这样的泛型类型实现Serialize trait 或者有其他方法来解决这个问题?

您需要将泛型类型T限制为一个特征(在本例中为Serialize ):

use rocket_contrib::json::{Json, JsonValue};

fn bluid_succes_response<T: serde::Serialize>(data: T) ->  JsonValue  { 
    json!(data) 
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM