Optionally use perfect hashing for field path matching in derive macro `apply`
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- rust
- Ambito
- devtools, performance
Direzione di ricerca
Inizia individuando la generazione del codice di apply della macro derive di Rust e verificando come vengono attualmente confrontati i percorsi dei campi. Esamina crate adatti dell’ecosistema per generare un perfect hashing e verifica che l’applicazione dei diffs preservi il comportamento esistente riducendo al contempo il costo del confronto tra stringhe per le struct di grandi dimensioni.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Field paths are serialized as strings, and applying a diff to a large struct can be costly due to excessive string matching. It should be possible to leverage one of the crates in the ecosystem for perfect hashing when generating code for apply in the derive macro.
- Lingua principale
- Rust
- Stelle
- 127
- Fork
- 22
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Non abbiamo ancora controllato i file di configurazione di questo progetto. Parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
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 amethyst/serde-diff
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
amethyst/serde-diff#29 ·
-
Iterate over differencesAperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
amethyst/serde-diff#43 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 10/100
amethyst/serde-diff#42 · 6 commenti · 2 reazioni ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 42/100
amethyst/serde-diff#39 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 45/100
amethyst/serde-diff#35 · 1 reazione ·
Tutte le issue di amethyst/serde-diff
Issue simili
-
`sysknife history --help` says --since takes ISO-8601, and the parser refuses offsets and bare datesApertabug easy good first issue help wanted
Difficoltà 1/5 1-3 ore Idoneità per principianti 94/100
lacs-project/sysknife#519 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
-
area:breg bug criticality:p3 triage:needs-implementation
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
registrystack/registry-stack#1699 ·
I maintainer di solito rispondono entro 1 giorno
-
documentation
Difficoltà 1/5 1-3 ore Idoneità per principianti 84/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
lbjlaq/Antigravity-Manager#3539 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno