aboutsummaryrefslogtreecommitdiff
path: root/src/lang/compiler.clj
diff options
context:
space:
mode:
authorEduardo Julian2014-12-16 00:58:36 -0400
committerEduardo Julian2014-12-16 00:58:36 -0400
commit70fe9266ce1ccb4fe964b831a7ab61f0d6262111 (patch)
treeeab9cca12d932a29b08a9ed0961b8d2600985c75 /src/lang/compiler.clj
parent08de30a36ff6599e583d22c4305bfee9878f92ea (diff)
+ Strings now have escape characters.
+ Characters have been added. % Unicode support is missing...
Diffstat (limited to '')
-rw-r--r--src/lang/compiler.clj13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/lang/compiler.clj b/src/lang/compiler.clj
index e7d1ed582..b29bc38d1 100644
--- a/src/lang/compiler.clj
+++ b/src/lang/compiler.clj
@@ -73,15 +73,24 @@
(cond (instance? java.lang.Integer ?literal)
(doto *writer*
(.visitTypeInsn Opcodes/NEW (->class "java.lang.Integer"))
- (.visitInsn Opcodes/DUP)(.visitLdcInsn ?literal)
+ (.visitInsn Opcodes/DUP)
+ (.visitLdcInsn ?literal)
(.visitMethodInsn Opcodes/INVOKESPECIAL (->class "java.lang.Integer") "<init>" "(I)V"))
(instance? java.lang.Float ?literal)
(doto *writer*
(.visitTypeInsn Opcodes/NEW (->class "java.lang.Float"))
- (.visitInsn Opcodes/DUP)(.visitLdcInsn ?literal)
+ (.visitInsn Opcodes/DUP)
+ (.visitLdcInsn ?literal)
(.visitMethodInsn Opcodes/INVOKESPECIAL (->class "java.lang.Float") "<init>" "(F)V"))
+ (instance? java.lang.Character ?literal)
+ (doto *writer*
+ (.visitTypeInsn Opcodes/NEW (->class "java.lang.Character"))
+ (.visitInsn Opcodes/DUP)
+ (.visitLdcInsn ?literal)
+ (.visitMethodInsn Opcodes/INVOKESPECIAL (->class "java.lang.Character") "<init>" "(C)V"))
+
(instance? java.lang.Boolean ?literal)
(if ?literal
;; (.visitLdcInsn *writer* (int 1))