Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Pattern e Corrispondenza

I Pattern sono una sintassi speciale in Rust per la corrispondenza (matching) con la struttura dei type, sia complessi che semplici. L’utilizzo di pattern insieme a espressioni match e altri costrutti offre un maggiore controllo sul flusso di controllo di un programma. Un pattern consiste in una combinazione dei seguenti elementi:

  • Letterali
  • Array destrutturati, enum, struct o tuple
  • Variabili
  • Caratteri jolly
  • Segnaposto

Alcuni esempi di pattern includono x, (a, 3) e Some(Colore::Rosso). Nei contesti in cui i pattern sono validi, questi componenti descrivono la forma dei dati. Il nostro programma confronta quindi i valori con i pattern per determinare se ha la forma corretta dei dati per continuare a eseguire una particolare porzione di codice.

Per utilizzare un pattern, lo confrontiamo con un valore. Se il pattern corrisponde al valore, utilizziamo le parti del valore nel nostro codice. Ricorda le espressioni match nel Capitolo 6 che utilizzavano pattern, come l’esempio della macchina smista monete. Se il valore corrisponde alla forma del pattern, possiamo usare i pezzi indicati. In caso contrario, il codice associato al pattern non verrà eseguito.

Questo capitolo è un riferimento su tutto ciò che riguarda i pattern. Tratteremo le situazioni valide in cui utilizzare i pattern, la differenza tra pattern confutabili e inconfutabili e i diversi tipi di sintassi dei pattern che potresti incontrare. Alla fine del capitolo, saprai come usare i pattern per esprimere molti concetti in modo chiaro.