接受闭包并为其提供时间字段访问的方法的常规名称是什么?

What is the conventional name for a method accepting a closure and providing temporal field access for it?

我有一个可以像这样简化的 Rust 结构:

struct Struct {
    field: String // the type doesn't matter
}
impl Struct {
    pub fn method<F, R>(&self, closure: F) -> R
    where
        F: FnOnce(&String) -> R
    {
        closure(&self.field)
    }
}

Struct::method 是否有任何约定的名称(在 Rust Book 或类似情况下的标准库中使用)?预计是 apply, visit..?

如果只有一种这样的方法并且它接收的数据是 Struct 的核心,我会选择:

  • map() 如果 consumes/transforms Struct 和 returns 一个新的 Struct,如 Option::map()
  • with() 如果它收到对数据的共享引用,如 LocalKey::with()
  • with_mut() 如果函数收到对数据的 unique/mutable 引用。 (对于这个我没有很好的参考,但它是 with() 的逻辑扩展,并且与容器上的 iter()iter_mut() 一致。)

如果有多个这样的方法,或者它操作的 Struct 数据的哪个子集不明显,我会调用添加字段名称,如 with_field()with_mut_field().