Gang,
I know lua has no preprocessor, but is there a way to implement
constants in
lua?
I'm setting up a table, currently with hard coded numbers:
t = {
a = function() Dispatch(100) end,
b = function() Dispatch(101) end,
c = function() Dispatch(102) end
}
(Dispatch is a registered C routine to do the internal dispatching in
my
app.)
I'd like the flexibility of defining a base number (eg 100) and the
rest be
offsets so that if I need to shift the entire range of numbers, I need
only
change one.
For example
base = 100
t = {
a = function() Dispatch(base) end,
b = function() Dispatch(base + 1) end,
c = function() Dispatch(base + 2) end
}
I know I can do the above, but I don't want the extra bit of variable
look
up and math on each call... I want "base + x" to be resolved at
compile time
into a number constant.
Is this possible?
If not, I may implement my own preprocessor to do what I need. One
question
about that:
If I replace instances of base with a constant number:
t = {
a = function() Dispatch(100) end,
b = function() Dispatch(100 + 1) end,
c = function() Dispatch(100 + 2) end
}
And then have lua compile that, is the compile process smart enough to
collapse the contant math into a single contant: such as
t = {
a = function() Dispatch(100) end,
b = function() Dispatch(101) end,
c = function() Dispatch(102) end
}
Or if I call b, will it perform 100 + 1 and than pass that to Dispatch?
Thx,
Ando
-----------------
SpriTec Software
www.spritec.com