Mercurial Hosting > luan
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" |