Add proc macro for converting async traits to return StackFutures

Aberta
#5 1 comentário 5 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
5/5
Tempo estimado
Mais de uma semana
Facilidade para iniciantes
25/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
rust
Domínio
backend

Direção de pesquisa

Comece revisando a API existente de StackFuture e o comportamento da crate async_trait referenciado na issue. Defina como a proc macro deve ser expandida tanto para declarações de traits quanto para impls, incluindo as anotações de lifetime necessárias; considera-se concluído quando ambas as formas produzem métodos funcionais que retornam StackFuture com a capacidade solicitada.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

enhancement

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.

Linguagem predominante
Rust
Estrelas
314
Forks
17
Merge médio
11h 50min
PRs com merge (30d)
1

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de microsoft/stackfuture

Todas as issues de microsoft/stackfuture

Issues semelhantes

Mais issues de Rust

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.