DECLARATION %FUNC%
Scopo: dichiarazione di una
propria funzione in Highway Language.
Sintassi: %FUNC% %NUMBER% [*] | %STRING% [*] | %FLOAT% [*] | %VOID% <nomefunzione> ( [%NUMBER%[*]| %FLOAT%[*]| %STRING%[*] parm_1[, ..., %NUMBER%[*]| %FLOAT%[*]| %STRING%[*] parm_N]])
Descrizione: consente di dichiarare una
propria funzione con i comandi CGI, ed inserirla all'interno di uno o
più script.
La regione di visibilità di una funzione è sempre globale, anche
se può essere definita all'interno di un blocco.
La sintassi dei comandi mostra le modalità di dichiarazione:
%FUNC% constrassegna l'inizio della funzione.
Di seguito va indicato il tipo di dato che la funzione ritorna
al chiamante.
La parte successiva è il nome vero e proprio della funzione, quello
con il quale verrà richiamata all'interno dello script CGI.
All'interno delle parentesi tonde che terminano la parte dichiarativa
della funzione, va indicata la lista dei parametri (tipo e nome)
Il nome della funzione, nel contesto di utilizzo dei caratteri % quali
terminatori delle parole chiave per il CGI (default), se NON viene dichiarato
racchiuso fra questi terminatori, al momento della chiamata dovrà essere
delimitato da caratteri % perchè il modulo Highway Application Server lo riconosca come parola
riservata.
Il corpo della funzione si chiude con %ENDFUNC%.
Le funzioni possono richiamare se stesse e quindi supportano il
vincolo della ricorsività.
Valore restituito: dipendente dalla dichiarazione.
In caso di errore generico non viene compilata.
Vedere anche: %ENDFUNC%, Linguaggio
Esempio:
%FUNC% %NUMBER% fattoriale (%NUMBER% n)
%IF%(n<3)
%RETURN%(n)
%ENDIF%
%RETURN%(n*fattoriale(n-1))
%ENDFUNC%
%WRITE%(fattoriale(2))<br>
%WRITE%(fattoriale(3))<br>
Program output:
2
6