comparison core/src/luan/impl/ReturnStmt.java @ 228:7580379cdc79

implement basic mail smtp git-svn-id: https://luan-java.googlecode.com/svn/trunk@229 21e917c8-12df-6dd8-5cb6-c86387c605b9
author fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
date Wed, 24 Sep 2014 03:39:34 +0000
parents 3dcb0f9bee82
children b48cfa14ba60
comparison
equal deleted inserted replaced
227:c0f87c1ba99f 228:7580379cdc79
24 } 24 }
25 25
26 @Override public void eval(LuanStateImpl luan) throws LuanException { 26 @Override public void eval(LuanStateImpl luan) throws LuanException {
27 luan.returnValues = expressions.eval(luan); 27 luan.returnValues = expressions.eval(luan);
28 if( tailFnExpr != null ) { 28 if( tailFnExpr != null ) {
29 LuanFunction tailFn = luan.bit(se).checkFunction( tailFnExpr.eval(luan) ); 29 LuanSource.Element seTail = tailFnExpr.se();
30 LuanFunction tailFn = luan.bit(seTail).checkFunction( tailFnExpr.eval(luan) );
30 if( tailFn instanceof Closure ) { 31 if( tailFn instanceof Closure ) {
31 luan.tailFn = (Closure)tailFn; 32 luan.tailFn = (Closure)tailFn;
32 } else { 33 } else {
33 luan.returnValues = luan.bit(tailFnExpr.se()).call(tailFn,tailFnExpr.se().text(),Luan.array(luan.returnValues)); 34 luan.returnValues = luan.bit(seTail).call(tailFn,seTail.text(),Luan.array(luan.returnValues));
34 } 35 }
35 } 36 }
36 if( throwReturnException ) 37 if( throwReturnException )
37 throw new ReturnException(); 38 throw new ReturnException();
38 } 39 }