diff src/luan/modules/lucene/Lucene.luan @ 796:6b8ea0a9b7c9

remove LuanMeta
author Franklin Schmidt <fschmidt@gmail.com>
date Mon, 05 Sep 2016 19:52:49 -0600
parents 1a68fc55a80c
children bae2d0c2576c
line wrap: on
line diff
--- a/src/luan/modules/lucene/Lucene.luan	Mon Sep 05 16:32:55 2016 -0600
+++ b/src/luan/modules/lucene/Lucene.luan	Mon Sep 05 19:52:49 2016 -0600
@@ -3,6 +3,7 @@
 local error = Luan.error
 local ipairs = Luan.ipairs or error()
 local type = Luan.type or error()
+local set_metatable = Luan.set_metatable or error()
 local Html = require "luan:Html.luan"
 local Io = require "luan:Io.luan"
 local uri = Io.uri or error()
@@ -36,7 +37,17 @@
 	local index = {}
 	index.dir = index_dir
 	local java_index = LuceneIndex.new(index_dir,default_type,default_fields)
-	index.indexed_fields = java_index.indexedFieldsMeta.newTable()
+--	index.indexed_fields = java_index.indexedFieldsMeta.newTable()
+
+	index.indexed_fields = {}
+	local mt = {}
+	set_metatable(index.indexed_fields,mt)
+	function mt.__index(_,key)
+		return java_index.getIndexedFieldParser(key)
+	end
+	function mt.__new_index(_,key,value)
+		return java_index.setIndexedFieldParser(key,value)
+	end
 
 	-- index.indexed_only_fields[type][field] = fn(doc)
 	index.indexed_only_fields = java_index.indexed_only_fields