Reserver does not need to be generic
メンテナーはふだん 2 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 72/100
調査の方向性
issueで引用されている Reserver 構造体と、その Debug 実装およびインherent implブロックから始めてください。次に Reserver<ChunkId, ChunkId> が構築・使用されている箇所を探します。型パラメータを削除して、フィールド reservations と pending_removals が ChunkId を直接使うようにし、implブロックと呼び出し箇所をそれに合わせて更新してください。crateが cargo check でコンパイルでき、既存のテストが cargo test で通れば完了です。
索引モデルが issue の本文から書いたものです。
説明
The Reserver<K,V> currently has two type parameters, but is only ever created as Reserver<ChunkId, ChunkId>. Removing the type parameters and making the Reserver non-generic will make it more simple.
The current generic code:
pub struct Reserver<K, V> {
reservations: Cache<K, (V, UnboundedSender<V>, Instant), FxBuildHasher>,
pending_removals: Arc<Mutex<DelayQueue<K>>>,
}
impl<K, V> core::fmt::Debug for Reserver<K, V>
where
K: Hash + Eq + Send + Sync + Debug + Copy + 'static,
V: Send + Sync + Clone + Debug + 'static,
{
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
f.debug_struct("Reserver")
.field("reservations", &self.reservations)
.field("&pending_removals", &self.pending_removals)
.finish()
}
}
impl<K, V> Reserver<K, V>
where
K: Hash + Eq + Send + Sync + Debug + Copy + 'static,
V: Send + Sync + Clone + 'static,
- 主要言語
- Rust
- スター
- 96
- フォーク
- 2
- 平均マージ
- 8日 22時間
- マージ済み PR(30日)
- 2
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
channable/opsqueue のほかの issue
-
Make `submissions_canceled` and `add_chunks_done_to_submissions_failed` migrations bidirectionalオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
メンテナーはふだん 2 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
channable/opsqueue#193 · コメント 2 件 ·
メンテナーはふだん 2 日以内に返信
-
discussion
難易度 5/5 1週間以上 初心者へのやさしさ 30/100
channable/opsqueue#188 · リアクション 1 件 ·
メンテナーはふだん 2 日以内に返信
-
難易度 3/5 1〜2日 初心者へのやさしさ 66/100
メンテナーはふだん 2 日以内に返信
-
難易度 3/5 1〜2日 初心者へのやさしさ 55/100
channable/opsqueue#182 · コメント 4 件 ·
メンテナーはふだん 2 日以内に返信
channable/opsqueue の issue をすべて見る
似ている issue
-
area: compat area: parsing bug
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
reubeno/brush#1526 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
OFN writer emits `DocIRI` as a bare IRI, which becomes a version IRI or a parse error on re-readオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
phillord/horned-owl#338 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
type/bug
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
stackabletech/operator-rs#1301 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
jmcnamara/rust_xlsxwriter#205 · コメント 4 件 ·