Mercurial Hosting > luan
diff src/luan/interp/ExpList.java @ 11:b7d7069fee58
add assignment statement and CmdLine
git-svn-id: https://luan-java.googlecode.com/svn/trunk@12 21e917c8-12df-6dd8-5cb6-c86387c605b9
author | fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9> |
---|---|
date | Thu, 22 Nov 2012 10:51:56 +0000 |
parents | 7a2cdbc5767f |
children | 3b22ffbdb83a |
line wrap: on
line diff
--- a/src/luan/interp/ExpList.java Thu Nov 22 04:37:10 2012 +0000 +++ b/src/luan/interp/ExpList.java Thu Nov 22 10:51:56 2012 +0000 @@ -7,7 +7,7 @@ import luan.LuaState; -final class ExpList extends Values { +final class ExpList implements Expressions { private interface Adder { public void addTo(LuaState lua,List<Object> list) throws LuaException; @@ -26,15 +26,15 @@ } - private static class ValuesAdder implements Adder { - private final Values values; + private static class ExpressionsAdder implements Adder { + private final Expressions expressions; - ValuesAdder(Values values) { - this.values = values; + ExpressionsAdder(Expressions expressions) { + this.expressions = expressions; } public void addTo(LuaState lua,List<Object> list) throws LuaException { - for( Object val : values.eval(lua) ) { + for( Object val : expressions.eval(lua) ) { list.add( val ); } } @@ -48,18 +48,18 @@ adders.add( new ExprAdder(expr) ); } - void add(Values values) { - adders.add( new ValuesAdder(values) ); + void add(Expressions expressions) { + adders.add( new ExpressionsAdder(expressions) ); } - Values build() { + Expressions build() { if( adders.isEmpty() ) return emptyExpList; if( adders.size() == 1 ) { Adder adder = adders.get(0); - if( adder instanceof ValuesAdder ) { - ValuesAdder va = (ValuesAdder)adder; - return va.values; + if( adder instanceof ExpressionsAdder ) { + ExpressionsAdder ea = (ExpressionsAdder)adder; + return ea.expressions; } ExprAdder ea = (ExprAdder)adder; return new SingleExpList(ea.expr); @@ -68,20 +68,20 @@ } } - private static final Values emptyExpList = new Values() { - List eval(LuaState lua) { + static final Expressions emptyExpList = new Expressions() { + @Override public List eval(LuaState lua) { return Collections.emptyList(); } }; - private static class SingleExpList extends Values { + static class SingleExpList implements Expressions { private final Expr expr; SingleExpList(Expr expr) { this.expr = expr; } - List eval(LuaState lua) throws LuaException { + @Override public List eval(LuaState lua) throws LuaException { return Collections.singletonList( expr.eval(lua) ); } } @@ -92,7 +92,7 @@ this.adders = adders; } - List eval(LuaState lua) throws LuaException { + @Override public List eval(LuaState lua) throws LuaException { List<Object> list = new ArrayList<Object>(); for( Adder adder : adders ) { adder.addTo(lua,list);