apache / apache/datafusion-sqlparser-rs
Rename VisitorMut::visit to VisitorMut::visit_mut
- Linguagem predominante
- Rust
- Estrelas
- 3.5k
- Forks
- 772
- Merge médio
- 4d 9h
- PRs com merge (30d)
- 17
Descrição
There're cases we need to use `Visitor::visit` and `VisitorMut::visit` in the same context. Since they're of the same name, compiler would be confused.
For example:
``` Rust
impl Visitor For NoopVisitor { .. }
impl VisitorMut for NoopVisitorMut { .. }
let mut visitor = NoopVisitor {};
let _ = stmt.visit(&mut visitor);
let mut visitor_mut = NoopVisitorMut {};
let _ = stmt.visit(&mut visitor_mut);
```
Would raise the error:
```
the trait bound `NoopVisitorMut: sqlparser::ast::Visitor` is not satisfied
the trait `sqlparser::ast::Visitor` is implemented for `NoopVisitor`
```
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Direção de pesquisa
Pesquise no repositório pela trait VisitorMut e seu método visit; em seguida, rastreie as implementações e os locais de chamada mostrados por essas correspondências. Renomeie o método de forma consistente e verifique se Visitor e VisitorMut podem ser usados no mesmo contexto sem o erro de trait bound relatado; execute os testes ou verificações Rust existentes relevantes.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- rust
- Domínio
- backend-api-design
- Tipo de issue
- Refatoração
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Status de atividade
- Estagnada
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 58/100