Amethyst 中 .join() 的类型

问题描述

我正在使用 amethyst 开发一个系统,该系统需要对一种存储类型进行两种不同的连接,并且其中一种需要是可变的。我已经定义了一个辅助函数,它采用不可变连接的结果和可变连接当前迭代的部分,但我不知道用什么类型来注释不可变连接。

fn helper_function(
  itemA: &A,itemB: &B,otherItems: ??
) {...}

impl<'a> System<'a> for MySystem {
  type SystemData = (
    Read<'a,A>,Write<'a,B>,Read<'a,C>
  );

  fn run(&mut self,(aa,bb,cc): Self::SystemData) {
    let data = (&bb,&cc).join().clone();
    for (a,b) in (&aa,&mut bb).join() {
      helper_function(a,b,data);
    }
  }
}

我查看了文档,这里的 data 的类型看起来像是某种称为 JoinIter 的私有特征,但我尝试只是对其进行注释(并且我尝试了 {{ 1}}) 但我想我一定错过了一些东西。我对 Rust 还很陌生,所以我很感激任何关于在这里做什么的帮助,或者通常在文档中寻找什么来自己找到这些信息。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)