summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRich Hickey <richhickey@gmail.com>2007-12-27 17:15:17 +0000
committerRich Hickey <richhickey@gmail.com>2007-12-27 17:15:17 +0000
commit9e1fdc8779227acf5c5fa3bd07592c6890fd1710 (patch)
tree60b4287ace3ed000af287679da5ee3046ca28101
parent2f14556a4e07b25c988987e38df77b404c59580e (diff)
added support for string as arg to class special op
-rw-r--r--src/jvm/clojure/lang/Compiler.java8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/jvm/clojure/lang/Compiler.java b/src/jvm/clojure/lang/Compiler.java
index a4c5cfbb..100915cc 100644
--- a/src/jvm/clojure/lang/Compiler.java
+++ b/src/jvm/clojure/lang/Compiler.java
@@ -351,7 +351,7 @@ static class VarExpr implements Expr, AssignableExpr{
public VarExpr(Var var, Symbol tag){
this.var = var;
- this.tag = tag!=null?tag:var.getTag();
+ this.tag = tag != null ? tag : var.getTag();
}
public Object eval() throws Exception{
@@ -371,7 +371,7 @@ static class VarExpr implements Expr, AssignableExpr{
}
public Class getJavaClass() throws ClassNotFoundException{
- return HostExpr.tagToClass(tag);
+ return HostExpr.tagToClass(tag);
}
public Object evalAssign(Expr val) throws Exception{
@@ -689,6 +689,8 @@ static abstract class HostExpr implements Expr{
}
}
}
+ else if(form instanceof String)
+ className = (String) form;
return className;
}
@@ -1993,7 +1995,7 @@ static class InvokeExpr implements Expr{
this.fexpr = fexpr;
this.args = args;
this.line = line;
- this.tag = tag!=null?tag:(fexpr instanceof VarExpr?((VarExpr)fexpr).tag:null);
+ this.tag = tag != null ? tag : (fexpr instanceof VarExpr ? ((VarExpr) fexpr).tag : null);
}
public Object eval() throws Exception{