Difference between revisions of "Eval"
Jump to navigation
Jump to search
imported>Odessa (Created) |
imported>Odessa (clarified) |
||
Line 1: | Line 1: | ||
{{Function | {{Function | ||
|origin = NVSE | |origin = NVSE | ||
|summary = Added by NVSE V4. Reduces an expression to a boolean for use in conditional statements. Used to permit the usage of any function or expression that may be so reduced. | |summary = Added by NVSE V4. Reduces an expression to a boolean for use in conditional statements. Used to permit the usage of any function or expression that may be so reduced for a conditional, when the compiler would otherwise disallow it. | ||
Eval is required to test the value of [[User Defined Function|user defined functions]], and those related to [[Array Variables|arrays]] and [[String Variables|strings]] in conditionals. | Eval is required to test the value of [[User Defined Function|user defined functions]], and those related to [[Array Variables|arrays]] and [[String Variables|strings]] in conditionals. | ||
Line 19: | Line 19: | ||
let aBeatles := ar_List JohnREF, PaulREF, GeorgeREF, RingoREF | let aBeatles := ar_List JohnREF, PaulREF, GeorgeREF, RingoREF | ||
if eval (aBeatles[3] == RingoREF) | if eval (aBeatles[3] == RingoREF) ; * test the fourth element of array is Ringo | ||
; Do something | ; Do something | ||
endif | endif | ||
if eval (Ar_Size aBeatles > 0) | if eval (Ar_Size aBeatles > 0) ; * test array holds more than zero elements | ||
; Do something | ; Do something | ||
endif | endif | ||
if eval (Call SomeSuitableUDF) | if eval (Call SomeSuitableUDF) ; * test the user defined function returns true | ||
; Do something | ; Do something | ||
endif | endif |
Revision as of 09:27, 26 May 2014
< [[::Category:Functions|Category:Functions]]
A function added by the New Vegas Script Extender.
Description
Added by NVSE V4. Reduces an expression to a boolean for use in conditional statements. Used to permit the usage of any function or expression that may be so reduced for a conditional, when the compiler would otherwise disallow it.
Eval is required to test the value of user defined functions, and those related to arrays and strings in conditionals.
Syntax
(boolean) Eval expression:reducable
Example
array_var aBeatles let aBeatles := ar_List JohnREF, PaulREF, GeorgeREF, RingoREF if eval (aBeatles[3] == RingoREF) ; * test the fourth element of array is Ringo ; Do something endif if eval (Ar_Size aBeatles > 0) ; * test array holds more than zero elements ; Do something endif if eval (Call SomeSuitableUDF) ; * test the user defined function returns true ; Do something endif
Notes
- If struggling to understand the purpose of 'eval', then by analogy think of 'if eval' as simply telling the GECK compiler the line is written in NVSE language, to prevent it complaining with an error.