Con la direttiva import si specifica il nome di un file CFDG il cui codice sarà incluso nel file attuale.
In questo modo è possibile utilizzare regole già specificate in altri file senza doverle riscrivere.
È facoltativa.
Se il file si trova nella stessa cartella, senza spazi nel nome, con l’estensione .cfdg, è sufficiente scrivere
import sorgente.cfdg
altrimenti bisogna aggiungere le virgolette “…” e il percorso relativo “../percorso/nomefile.est”.
I file presenti nel menu Examples si raggiungono direttamente
import i_polygons.cfdg startshape PENTAGONO shape PENTAGONO { polygon5sided [] }
La regola polygon5sided è specificata nel file i_polygons.cfdg.
In Context Free sono già presenti tre librerie di regole
- i_curves.cfdg
- i_pix.cfdg
- i_polygons.cfdg
Ogni libreria ha la sua direttiva startshape che permette di provare tutte le regole presenti.
Quando la libreria sarà inclusa in un altro file la sua direttiva sarà esclusa automaticamente con la prima direttiva startshape presente.
Namespace
Tutte le risorse presenti si aggiungono con i loro nomi al namespace locale, creando potenzialmente dei conflitti.
Si possono evitare conflitti di nomi assegnando un namespace diverso alle regole importate
import@poligoni i_polygons.cfdg // importazione con namespace "poligoni" shape polygon5sided // regola definita localmente { // ... } // ... poligoni::polygon5sided [] // regola importata // ...