Mercurial Hosting > luan
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