Add proc macro for converting async traits to return StackFutures
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
Direzione di ricerca
Inizia esaminando l’API esistente di StackFuture e il comportamento della crate async_trait a cui si fa riferimento nell’issue. Definisci come la proc macro debba espandersi sia per le dichiarazioni dei trait sia per gli impl, incluse le annotazioni di lifetime richieste; il lavoro è completato quando entrambe le forme producono metodi funzionanti che restituiscono StackFuture con la capacità richiesta.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
The idea here is to make a macro similar to the #[async_trait] one from the async trait crate. Using it would look something like this:
#[stackfuture::async_trait(4096)]
trait Foo {
async fn bar(&self) -> i32;
}
The macro would then expand to something like (along with whatever lifetime annotations are needed:
trait Foo {
fn bar(&self) -> StackFuture<i32, { 4096 }>`;
}
We'd do a similar thing for impls as well.
- Lingua principale
- Rust
- Stelle
- 314
- Fork
- 17
- Merge medio
- 11h 50m
- PR unite (30g)
- 1
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di microsoft/stackfuture
-
Add benchmarks Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
microsoft/stackfuture#8 · 1 reazione ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
microsoft/stackfuture#6 · 5 commenti ·
Tutte le issue di microsoft/stackfuture
Issue simili
-
risk:low runtime status:in-progress type:test
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
zeroclaw-labs/zeroclaw#11023 ·
-
good first issue refactor
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
EricSpencer00/Resilient#4835 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
bisq-network/bisq-musig#204 ·
-
agent:ready documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
cesarferreira/stax#890 ·