[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Validate parameters to Lua functions
- From: Sean Conner <sean@...>
- Date: Fri, 8 Apr 2011 05:11:31 -0400
It was thus said that the Great C++ RTMP Server once stated:
> Hello all,
>
> I'm just trying the depth of the ocean with my finger here...
>
> Is it somehow possible to validate the number/types of parameters for lua
> functions from C/C++? More details ...
>
>
> I already embedded lua as scripting engine in my project. What I do is to
> load the lua script, inspect the existence of certain lua functions in the
> script and if they exists I will call them when the time comes. Now, is it
> possible to also introspect/reflect on the number/types of parameters?
>
> Some pseudo code:
>
> if unable to load lua script
> return false
>
> foreach functionName in functionsNamesList do
> if functionName doesn't exist //this works just fine
> continue
Yes, this you can do.
> if functionName parameters count different from expected //maybe possible
> continue
Nope. All you can really do is see if the function exists. It's up to
the function itself to check the paramters it gets.
> if functionName parameters types different from expected //I bet that this is not possible....
> continue
Nope.
> mark function as callable
> done
> Bottom line:
> Is there any lua api for further describe a LUA_TFUNCTION in greater
> detail? (parameters count, types, return type, etc)? Even if I have only
> parameters count is still better than nothing.
Sorry, all you can do is see if it's a function, and when it's time to
call it, push what you think is the appropriate data onto the Lua stack and
call it.
-spc