comparison core/src/luan/impl/LuanParser.java @ 676:1b6a0dc0ea16

minor
author Franklin Schmidt <fschmidt@gmail.com>
date Tue, 12 Apr 2016 19:44:32 -0600
parents d95caff8ba8c
children 5c85d38659db
comparison
equal deleted inserted replaced
675:d95caff8ba8c 676:1b6a0dc0ea16
3 import java.util.Set; 3 import java.util.Set;
4 import java.util.HashSet; 4 import java.util.HashSet;
5 import java.util.Arrays; 5 import java.util.Arrays;
6 import java.util.List; 6 import java.util.List;
7 import java.util.ArrayList; 7 import java.util.ArrayList;
8 import java.util.concurrent.atomic.AtomicInteger;
8 import luan.Luan; 9 import luan.Luan;
9 import luan.LuanState; 10 import luan.LuanState;
10 import luan.LuanTable; 11 import luan.LuanTable;
11 import luan.modules.PackageLuan; 12 import luan.modules.PackageLuan;
12 13
1744 } 1745 }
1745 1746
1746 1747
1747 1748
1748 1749
1749 private static int classCounter = 0; 1750 private static AtomicInteger classCounter = new AtomicInteger();
1750 1751
1751 private enum Val { SINGLE, ARRAY } 1752 private enum Val { SINGLE, ARRAY }
1752 1753
1753 private class Expr { 1754 private class Expr {
1754 final List list = new ArrayList(); 1755 final List list = new ArrayList();
1836 1837
1837 private Class toFnClass(Stmts stmt,List<UpSym> upValueSymbols) { 1838 private Class toFnClass(Stmts stmt,List<UpSym> upValueSymbols) {
1838 String code = concat(stmt.list); 1839 String code = concat(stmt.list);
1839 //System.out.println("code:\n"+code); 1840 //System.out.println("code:\n"+code);
1840 1841
1841 String className = "EXP" + ++classCounter; 1842 String className = "EXP" + classCounter.incrementAndGet();
1842 String classCode = "" 1843 String classCode = ""
1843 +"package luan.impl;\n" 1844 +"package luan.impl;\n"
1844 +"import luan.Luan;\n" 1845 +"import luan.Luan;\n"
1845 +"import luan.LuanFunction;\n" 1846 +"import luan.LuanFunction;\n"
1846 +"import luan.LuanState;\n" 1847 +"import luan.LuanState;\n"