rust

    5

    1答えて

    多くのライブラリでは、traitを実装するタイプを定義して、コールバックハンドラとして使用できます。これには、イベントを処理するために必要なすべてのデータを単一のデータ型でまとめて処理する必要があります。これは、借用を複雑にします。 たとえば、mioは、を実装し、run the EventLoopのときに構造体を指定できます。これらの矮小データ型の例を考えてみましょう: struct A {

    5

    1答えて

    私は適切な錆のコードを書く方法を理解しようとしていますが、私は私のオブジェクトの寿命を理解するコンパイラの能力のパワーを過大評価していると思います。私はそれが動作するように期待通りこれはコードです: use std::path::Path; use std::env; use rusqlite::SqliteConnection; struct SomeDatabase { co

    5

    1答えて

    構造体をRustの16バイト境界に揃える必要があります。 repr attributeを使用してアラインメントに関するヒントを示すことは可能ですが、この正確な使用例はサポートしていません。 私が達成しようとしているものの機能テストは、このような assert_eq!(mem::align_of::<Foo>(), 16); または代わりにそのタイプFoo、 println!("{:p}", B

    15

    1答えて

    cargo test を実行しているの一環としてコンパイル ことを私は錆ライブラリを書いていると私は私のドキュメントの例を提供したいがにない実行を行います。 これは可能ですか? 私はデータベースクライアントライブラリを作成していますが、これらの例では仮想データベースは存在しません。したがって、実行すると例は常に失敗しますが、例が構文的に有効であることが重要です。したがって上記の私の要件。 私がした

    6

    1答えて

    のために実装されていない私は、このかなり簡単錆プログラムがあります。 use std::ops::Deref; trait Foo { fn foo(&self); } impl Foo for() { fn foo(&self) { println!("hello world"); } } impl<F> Foo for Box<F> wh

    9

    2答えて

    Cでは、int foo[100] = { 7, 8 };と書くことができ、[7, 8, 0, 0, 0...]となります。 これにより、配列の先頭に隣接する要素のグループの初期値を明示的かつ簡潔に選択することができ、残りは静的な記憶期間(つまり、適切な型のゼロ値)があるかのように初期化されます)。 錆に相当するものはありますか?

    5

    2答えて

    mod simulation; use simulation::factory::FactoryType; はmain.rsではなく、simulation/factory.rs内部doctestの中で正常に動作します: impl product_type::ProductType for FactoryType { /// Lorem Ipsum /// //

    5

    1答えて

    私は以前、Rustのライブラリバインディングを書くのに苦労しました。それは難しくありませんでした。しかし、私は固執しています:librsyncのバインディングを書き込もうとしていて、その関数のいくつかは開いているファイルハンドル(CではFILE*)を渡すことを期待しています。 プリミティブ型の場合、Cに渡す簡単な方法があります(プリミティブ型へのポインタでも同じです)。そして、明確にするために、私

    8

    2答えて

    "あなた"または "私"の回答を期待している質問をユーザーに聞く簡単な関数をRustに書き込もうとしています。ブール値を返すか、ユーザーが間違って答えた場合には再度質問する必要があります。 fn player_starts() -> bool { println!("Who will start (me/you)"); loop {

    11

    2答えて

    私はkcovを使ってRustライブラリのコードカバレッジを取得しようとしました。私はthis tutorialに続いてkcovをビルドして使用しました。カバレッジはうまくいくようですが、私は奇妙な高いカバレッジに直面しています。実際にはまったくカバーされていなくても、プロジェクトの一部のファイルは100%のカバレッジを取得します。 これは、問題を再現する最小限のプロジェクトです: Cargo.to