diff src/luan/modules/Parsers.luan @ 1261:198d6af7330a

rename Luan.to_table to Table.java_to_table_shallow and Luan.to_luan to Table.java_to_table_deep
author Franklin Schmidt <fschmidt@gmail.com>
date Mon, 24 Sep 2018 13:09:16 -0600
parents e8020216dee7
children 8d95711f6615
line wrap: on
line diff
--- a/src/luan/modules/Parsers.luan	Sun Sep 23 22:32:34 2018 -0600
+++ b/src/luan/modules/Parsers.luan	Mon Sep 24 13:09:16 2018 -0600
@@ -12,13 +12,18 @@
 Parsers.theme_to_luan = Theme.toLuan
 
 local Luan = require "luan:Luan.luan"
+local error = Luan.error
+local type = Luan.type or error()
+local Table = require "luan:Table.luan"
+local java_to_table_deep = Table.java_to_table_deep or error()
 local LuanJava = require "java:luan.Luan"
 local JsonParser = require "java:luan.lib.json.JsonParser"
 local JsonToString = require "java:luan.lib.json.JsonToString"
 
 -- converts json string to luan object
 function Parsers.json_parse(s)
-	return Luan.to_luan(JsonParser.parse(s))
+	local obj = JsonParser.parse(s)
+	return type(obj)=="java" and java_to_table_deep(obj) or obj
 end
 
 -- converts luan object to json string