Eval
Value = Eval ( Expression AS String [ , Context AS Collection ] ) AS Variant
Valuta un'espressione e restituisce un valore. Questa espressione può essere usata con quasi tuti gli operatori e subroutine di Gambas.
L'opzione
Context è una collection che deve contenere il valore di ogni simbolo non definito di
Espressione.
Esempio
DIM Context AS New Collection
Context["X"] = 2
Context["Y"] = "Gambas"
PRINT Eval("X * Len(Y)", Context)
Assegnazioni
Iniziando l'espressione con la parola chiave
LET, è possibile valutare un'assegnazione. In questo caso, il valore assegnato viene restituito.
L'espressione di assegnazione, può usare un'operatore di assegnazione, ma non può usare l'istruzione che ritorna qualcosa tipo
OPEN,
NEW...
Questa espressione di assegnazione può usare quasi tutti gli operatori e le subroutine di Gambas.
Esempio
Dim Context AS New Collection
Context["X"] = "Liberation Serif"
Print Application.Font.ToString()
Print Eval("Let Application.Font = Font[X]", Context)
Print Application.Font.ToString()
Sans,10
(Font 0x8fae9e8)
Liberation Serif,10
Vedi anche