
Model 2657A High Power System SourceMeter® Instrument Reference Manual
Section 6: Instrument programming
2657A-901-01 Rev. B/December 2012
6-19
You can use parentheses to change the precedences in an expression. The concatenation ("
..
") and
exponentiation ("
^
") operators are right associative. All other binary operators are left associative. The
examples below show equivalent expressions.
Equivalent expressions
r offset < testValue/2+0.5
=
(r offset) <
((testValue/2)+0.5)
3+reading^2*4
=
3+((reading^2)*4)
Rdg < maxRdg and lastRdg <=
expectedRdg
=
(Rdg < maxRdg) and (lastRdg <=
expectedRdg)
-reading^2
=
-(reading^2)
reading^testAdjustment^2
=
reading^(testAdjustment^2)
Conditional branching
Lua uses the
if
,
else
,
elseif
,
then
, and
end
keywords to do conditional branching.
Note that in Lua,
nil
and
false
are
false
and everything else is
true
. Zero (0) is
true
in Lua.
The syntax of a conditional block is as follows:
if
expression
then
block
elseif
expression
then
block
else
block
end
Where:
•
expression
is Lua code that evaluates to either
true
or
false
•
block
consists of one or more Lua statements
Example: If
if 0 then
print("Zero is true!")
else
print("Zero is false.")
end
Output:
Zero is true!
Example: Comparison
x = 1
y = 2
if x and y then
print("Both x and y are true")
end
Output:
Both x and y are true
Содержание 2657A
Страница 3: ......