Upgrade to Clojure 1.5.1 & switch to clojure-slim JAR - #792
This commit is contained in:
parent
886fb5eee9
commit
c68c1bb2b1
@ -12,7 +12,7 @@
|
||||
<classpathentry exported="true" kind="lib" path="main/webapp/WEB-INF/lib/ant-tools-1.8.0.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="main/webapp/WEB-INF/lib/arithcode-1.1.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="main/webapp/WEB-INF/lib/butterfly-1.0.1.jar" sourcepath="main/webapp/WEB-INF/lib-src/butterfly-1.0.1-sources.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="main/webapp/WEB-INF/lib/clojure-1.4.0.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="main/webapp/WEB-INF/lib/clojure-1.5.1-slim.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="main/webapp/WEB-INF/lib/commons-codec-1.6.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="main/webapp/WEB-INF/lib/commons-collections-3.2.1.jar"/>
|
||||
<classpathentry exported="true" kind="lib" path="main/webapp/WEB-INF/lib/commons-fileupload-1.2.1.jar"/>
|
||||
|
@ -40,6 +40,7 @@ import java.util.Properties;
|
||||
import java.util.Set;
|
||||
|
||||
import clojure.lang.IFn;
|
||||
import clojure.lang.RT;
|
||||
|
||||
import com.google.refine.grel.Parser;
|
||||
|
||||
@ -59,6 +60,10 @@ abstract public class MetaParser {
|
||||
|
||||
static final protected Map<String, LanguageInfo> s_languages = new HashMap<String, LanguageInfo>();
|
||||
|
||||
// TODO: We should switch from using the internal compiler class
|
||||
// final static private Var CLOJURE_READ_STRING = RT.var("clojure.core", "read-string");
|
||||
// final static private Var CLOJURE_EVAL = RT.var("clojure.core", "eval");
|
||||
|
||||
static {
|
||||
registerLanguageParser("grel", "Google Refine Expression Language (GREL)", new LanguageSpecificParser() {
|
||||
|
||||
@ -73,10 +78,18 @@ abstract public class MetaParser {
|
||||
@Override
|
||||
public Evaluable parse(String s) throws ParsingException {
|
||||
try {
|
||||
// RT.load("clojure/core"); // Make sure RT is initialized
|
||||
Object foo = RT.CURRENT_NS; // Make sure RT is initialized
|
||||
IFn fn = (IFn) clojure.lang.Compiler.load(new StringReader(
|
||||
"(fn [value cell cells row rowIndex] " + s + ")"
|
||||
));
|
||||
|
||||
// TODO: We should to switch from using Compiler.load
|
||||
// because it's technically an internal interface
|
||||
// Object code = CLOJURE_READ_STRING.invoke(
|
||||
// "(fn [value cell cells row rowIndex] " + s + ")"
|
||||
// );
|
||||
|
||||
return new Evaluable() {
|
||||
private IFn _fn;
|
||||
|
||||
|
Binary file not shown.
BIN
main/webapp/WEB-INF/lib/clojure-1.5.1-slim.jar
Normal file
BIN
main/webapp/WEB-INF/lib/clojure-1.5.1-slim.jar
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user