gpt4 book ai didi

rust - 具有特征约束的通用闭包的类型签名

转载 作者:行者123 更新时间:2023-11-29 08:30:19 25 4
gpt4 key购买 nike

我有以下工作正常的结构:

pub struct Pattern {
pub regex: &'static str,
pub view: Fn (Request) -> Response,
}

但我想更改 view 以接受任何实现 Renderable(特征约束)的类型。我原以为它会以这种方式工作:

pub struct Pattern {
pub regex: &'static str,
pub view: Fn <T: Renderable> (Request) -> T,
}

但运气不好。有什么想法吗?

最佳答案

您想在结构(以及该结构的任何实现)上使用 where 子句:

trait A { fn moo(&self); }
struct S;

struct Pattern<T>
where T: A
{
view: Fn (T) -> S,
}

fn main() {}

关于rust - 具有特征约束的通用闭包的类型签名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29480586/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com