borrow-checker

    1

    1答えて

    、それは多くの場合、錆が に十分にスマートでない場合だが、見出し「生存性」の下で、それは を言いますが、複数の借りが互いに素であることを証明しています。 Rustコンパイラが互いに独立していることを証明できない例は何ですか?これはタプル構造体でこれまで起こるでしょうか?

    3

    2答えて

    私は同時に2つのイテレータを処理する関数を実装しようとしています。このコールバックは、(bool, bool)タプルを返すことで、各ステップでどのイテレータを進めるかを制御できます。イテレータは私の使用例でバッファを参照するので、ファンクション(Iterator::nextと同じですが、追加の有効期間パラメータが必要です)を使用してstdlibからIteratorの特性を実装することはできません。

    0

    1答えて

    私はティックの期間を取る更新メソッドを実装するElement構造体を持っています。構造体にはコンポーネントのベクトルが含まれています。これらのコンポーネントは、更新時に要素を変更することができます。私はここで借りてエラーが発生していると私は何をすべきか分からない。私はブロックでそれを修正しようとしましたが、ブロックは借りチェッカーを満たしていないようです。 use std::collections

    3

    1答えて

    を住んでいない 次のコードはコンパイルされません: use std::borrow::Borrow; struct Inner<'a> { v: Vec<&'a u8>, } struct Foo<'a> { inner: Inner<'a>, derp: Box<u8>, } impl<'a> Foo<'a> { fn new() -> F

    0

    2答えて

    私はこの構造体を持っている:私はこのエラーを取得するよう pub struct Node<T> { value: T, left: Option<Box<Node<T>>>, right: Option<Box<Node<T>>>, } impl<T> Node<T> { pub fn getLeft(&self) -> Option<&Self> {

    0

    2答えて

    私はいつも私を借りチェッカーと競合させる私の錆のプログラムのパターンにつまずいています。次のおもちゃの例を考えてみましょう: use std::sync::{Arc,RwLock}; pub struct Test { thing: i32, } pub struct Test2 { pub test: Arc<RwLock<Test>>, pub thos

    0

    1答えて

    私は、キューにdequeue機能を実装しようとしているが、私は借りチェッカーがどのように機能するか混乱しています。このコードで私は間違って何をしていますか? use std::cell::RefCell; use std::rc::Rc; use std::mem::replace; type Link<T> = Option<Rc<RefCell<Node<T>>>>; struct

    0

    2答えて

    selfにある任意の値と一致させる必要があり、一致する場合はselfのメソッドを呼び出して、selfを変更します。私はかなり高性能のゲームをやろうとしていますので、私はこのような状況では不可能です。つまり、メソッドは実際に構造体にアクセスする必要があります。構造体のプロパティに基づいてディスパッチされます。ここにMVCEがあります: enum Baz { A, B,

    -1

    1答えて

    私はtcod-rsを使用しています。 RootConsoleに描画するために使用された各メソッドは、のという可変参照を取ります。中央のループは、ウィンドウが閉じられるのを待って、画面をクリアし、描画してから、フラッシュするwhileループです。 「ウィンドウクローズのチェック」メソッドもまた、変更可能な参照を取ります。 clearおよびflushでもあります。 fn draw(root: &mut