comparison core/src/luan/impl/LuanParser.java @ 245:2ed8465a9d62

allow TemplateExpressions at end of table constructor git-svn-id: https://luan-java.googlecode.com/svn/trunk@246 21e917c8-12df-6dd8-5cb6-c86387c605b9
author fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
date Thu, 09 Oct 2014 23:05:01 +0000
parents 284eddd599b1
children b5995d77878a
comparison
equal deleted inserted replaced
244:0a8e6fdb62f0 245:2ed8465a9d62
832 In inParens = in.parens(); 832 In inParens = in.parens();
833 Spaces(inParens); 833 Spaces(inParens);
834 List<TableExpr.Field> fields = new ArrayList<TableExpr.Field>(); 834 List<TableExpr.Field> fields = new ArrayList<TableExpr.Field>();
835 List<Expressions> builder = new ArrayList<Expressions>(); 835 List<Expressions> builder = new ArrayList<Expressions>();
836 while( Field(fields,builder,inParens) && FieldSep(inParens) ); 836 while( Field(fields,builder,inParens) && FieldSep(inParens) );
837 Expressions exp = TemplateExpressions(in);
838 if( exp != null )
839 builder.add(exp);
837 if( !parser.match('}') ) 840 if( !parser.match('}') )
838 throw parser.exception("Expected table element or '}'"); 841 throw parser.exception("Expected table element or '}'");
839 Spaces(in); 842 Spaces(in);
840 return parser.success( new TableExpr( se(start), fields.toArray(new TableExpr.Field[0]), ExpList.build(builder) ) ); 843 return parser.success( new TableExpr( se(start), fields.toArray(new TableExpr.Field[0]), ExpList.build(builder) ) );
841 } 844 }