apache / apache/datafusion-sqlparser-rs

Rename VisitorMut::visit to VisitorMut::visit_mut

Aperta
#2,067 0 commenti 1 reazione 0 assegnatari Vedi su GitHub
Lingua principale
Rust
Stelle
3.5k
Fork
772
Merge medio
4g 9h
PR unite (30g)
17

Descrizione

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`
```

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Cerca nel repository il trait VisitorMut e il relativo metodo visit, quindi segui le implementazioni e i punti di chiamata mostrati da queste corrispondenze. Rinomina il metodo in modo coerente e verifica che Visitor e VisitorMut possano essere usati nello stesso contesto senza l'errore di vincolo del trait segnalato; esegui i test o i controlli Rust esistenti pertinenti.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
rust
Ambito
backend-api-design
Tipo di issue
Refactoring
Difficoltà
2/5
Tempo stimato
1-3 ore
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
58/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.