Mercurial Hosting > luan
view src/luan/interp/FnCall.java @ 3:7a2cdbc5767f
add LuaState
git-svn-id: https://luan-java.googlecode.com/svn/trunk@4 21e917c8-12df-6dd8-5cb6-c86387c605b9
author | fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9> |
---|---|
date | Fri, 16 Nov 2012 05:23:12 +0000 |
parents | 4da26b11d12a |
children | b7d7069fee58 |
line wrap: on
line source
package luan.interp; import java.util.Arrays; import java.util.List; import luan.Lua; import luan.LuaFunction; import luan.LuaException; import luan.LuaState; final class FnCall extends Values { private final Expr fnExpr; private final Values args; FnCall(Expr fnExpr,Values args) { this.fnExpr = fnExpr; this.args = args; } List eval(LuaState lua) throws LuaException { LuaFunction fn = Lua.checkFunction( fnExpr.eval(lua) ); return Arrays.asList( fn.call( args.eval(lua).toArray() ) ); } }