ferret 0.9.0 → 0.9.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (187) hide show
  1. data/Rakefile +23 -5
  2. data/TODO +2 -1
  3. data/ext/analysis.c +838 -177
  4. data/ext/analysis.h +55 -7
  5. data/ext/api.c +69 -0
  6. data/ext/api.h +27 -0
  7. data/ext/array.c +8 -5
  8. data/ext/compound_io.c +132 -96
  9. data/ext/document.c +58 -28
  10. data/ext/except.c +59 -0
  11. data/ext/except.h +88 -0
  12. data/ext/ferret.c +47 -3
  13. data/ext/ferret.h +3 -0
  14. data/ext/field.c +15 -9
  15. data/ext/filter.c +1 -1
  16. data/ext/fs_store.c +215 -34
  17. data/ext/global.c +72 -3
  18. data/ext/global.h +4 -3
  19. data/ext/hash.c +44 -3
  20. data/ext/hash.h +9 -0
  21. data/ext/header.h +58 -0
  22. data/ext/inc/except.h +88 -0
  23. data/ext/inc/lang.h +23 -13
  24. data/ext/ind.c +16 -10
  25. data/ext/index.h +2 -22
  26. data/ext/index_io.c +3 -11
  27. data/ext/index_rw.c +245 -193
  28. data/ext/lang.h +23 -13
  29. data/ext/libstemmer.c +92 -0
  30. data/ext/libstemmer.h +79 -0
  31. data/ext/modules.h +162 -0
  32. data/ext/q_boolean.c +34 -21
  33. data/ext/q_const_score.c +6 -12
  34. data/ext/q_filtered_query.c +206 -0
  35. data/ext/q_fuzzy.c +18 -15
  36. data/ext/q_match_all.c +3 -7
  37. data/ext/q_multi_phrase.c +10 -14
  38. data/ext/q_parser.c +29 -2
  39. data/ext/q_phrase.c +14 -21
  40. data/ext/q_prefix.c +15 -12
  41. data/ext/q_range.c +30 -28
  42. data/ext/q_span.c +13 -21
  43. data/ext/q_term.c +17 -26
  44. data/ext/r_analysis.c +693 -21
  45. data/ext/r_doc.c +11 -12
  46. data/ext/r_index_io.c +4 -1
  47. data/ext/r_qparser.c +21 -2
  48. data/ext/r_search.c +285 -18
  49. data/ext/ram_store.c +5 -2
  50. data/ext/search.c +11 -17
  51. data/ext/search.h +21 -45
  52. data/ext/similarity.h +67 -0
  53. data/ext/sort.c +30 -25
  54. data/ext/stem_ISO_8859_1_danish.c +338 -0
  55. data/ext/stem_ISO_8859_1_danish.h +16 -0
  56. data/ext/stem_ISO_8859_1_dutch.c +635 -0
  57. data/ext/stem_ISO_8859_1_dutch.h +16 -0
  58. data/ext/stem_ISO_8859_1_english.c +1156 -0
  59. data/ext/stem_ISO_8859_1_english.h +16 -0
  60. data/ext/stem_ISO_8859_1_finnish.c +792 -0
  61. data/ext/stem_ISO_8859_1_finnish.h +16 -0
  62. data/ext/stem_ISO_8859_1_french.c +1276 -0
  63. data/ext/stem_ISO_8859_1_french.h +16 -0
  64. data/ext/stem_ISO_8859_1_german.c +512 -0
  65. data/ext/stem_ISO_8859_1_german.h +16 -0
  66. data/ext/stem_ISO_8859_1_italian.c +1091 -0
  67. data/ext/stem_ISO_8859_1_italian.h +16 -0
  68. data/ext/stem_ISO_8859_1_norwegian.c +296 -0
  69. data/ext/stem_ISO_8859_1_norwegian.h +16 -0
  70. data/ext/stem_ISO_8859_1_porter.c +776 -0
  71. data/ext/stem_ISO_8859_1_porter.h +16 -0
  72. data/ext/stem_ISO_8859_1_portuguese.c +1035 -0
  73. data/ext/stem_ISO_8859_1_portuguese.h +16 -0
  74. data/ext/stem_ISO_8859_1_spanish.c +1119 -0
  75. data/ext/stem_ISO_8859_1_spanish.h +16 -0
  76. data/ext/stem_ISO_8859_1_swedish.c +307 -0
  77. data/ext/stem_ISO_8859_1_swedish.h +16 -0
  78. data/ext/stem_KOI8_R_russian.c +701 -0
  79. data/ext/stem_KOI8_R_russian.h +16 -0
  80. data/ext/stem_UTF_8_danish.c +344 -0
  81. data/ext/stem_UTF_8_danish.h +16 -0
  82. data/ext/stem_UTF_8_dutch.c +653 -0
  83. data/ext/stem_UTF_8_dutch.h +16 -0
  84. data/ext/stem_UTF_8_english.c +1176 -0
  85. data/ext/stem_UTF_8_english.h +16 -0
  86. data/ext/stem_UTF_8_finnish.c +808 -0
  87. data/ext/stem_UTF_8_finnish.h +16 -0
  88. data/ext/stem_UTF_8_french.c +1296 -0
  89. data/ext/stem_UTF_8_french.h +16 -0
  90. data/ext/stem_UTF_8_german.c +526 -0
  91. data/ext/stem_UTF_8_german.h +16 -0
  92. data/ext/stem_UTF_8_italian.c +1113 -0
  93. data/ext/stem_UTF_8_italian.h +16 -0
  94. data/ext/stem_UTF_8_norwegian.c +302 -0
  95. data/ext/stem_UTF_8_norwegian.h +16 -0
  96. data/ext/stem_UTF_8_porter.c +794 -0
  97. data/ext/stem_UTF_8_porter.h +16 -0
  98. data/ext/stem_UTF_8_portuguese.c +1055 -0
  99. data/ext/stem_UTF_8_portuguese.h +16 -0
  100. data/ext/stem_UTF_8_russian.c +709 -0
  101. data/ext/stem_UTF_8_russian.h +16 -0
  102. data/ext/stem_UTF_8_spanish.c +1137 -0
  103. data/ext/stem_UTF_8_spanish.h +16 -0
  104. data/ext/stem_UTF_8_swedish.c +313 -0
  105. data/ext/stem_UTF_8_swedish.h +16 -0
  106. data/ext/stopwords.c +325 -0
  107. data/ext/store.c +34 -2
  108. data/ext/tags +2953 -0
  109. data/ext/term.c +21 -15
  110. data/ext/termdocs.c +5 -3
  111. data/ext/utilities.c +446 -0
  112. data/ext/vector.c +27 -13
  113. data/lib/ferret/document/document.rb +1 -1
  114. data/lib/ferret/index/index.rb +44 -6
  115. data/lib/ferret/query_parser/query_parser.tab.rb +7 -3
  116. data/lib/rferret.rb +2 -1
  117. data/test/test_helper.rb +2 -2
  118. data/test/unit/analysis/ctc_analyzer.rb +401 -0
  119. data/test/unit/analysis/ctc_tokenstream.rb +423 -0
  120. data/test/unit/analysis/{tc_letter_tokenizer.rb → rtc_letter_tokenizer.rb} +0 -0
  121. data/test/unit/analysis/{tc_lower_case_filter.rb → rtc_lower_case_filter.rb} +0 -0
  122. data/test/unit/analysis/{tc_lower_case_tokenizer.rb → rtc_lower_case_tokenizer.rb} +0 -0
  123. data/test/unit/analysis/{tc_per_field_analyzer_wrapper.rb → rtc_per_field_analyzer_wrapper.rb} +0 -0
  124. data/test/unit/analysis/{tc_porter_stem_filter.rb → rtc_porter_stem_filter.rb} +0 -0
  125. data/test/unit/analysis/{tc_standard_analyzer.rb → rtc_standard_analyzer.rb} +0 -0
  126. data/test/unit/analysis/{tc_standard_tokenizer.rb → rtc_standard_tokenizer.rb} +0 -0
  127. data/test/unit/analysis/{tc_stop_analyzer.rb → rtc_stop_analyzer.rb} +0 -0
  128. data/test/unit/analysis/{tc_stop_filter.rb → rtc_stop_filter.rb} +0 -0
  129. data/test/unit/analysis/{tc_white_space_analyzer.rb → rtc_white_space_analyzer.rb} +0 -0
  130. data/test/unit/analysis/{tc_white_space_tokenizer.rb → rtc_white_space_tokenizer.rb} +0 -0
  131. data/test/unit/analysis/{tc_word_list_loader.rb → rtc_word_list_loader.rb} +0 -0
  132. data/test/unit/analysis/tc_analyzer.rb +1 -2
  133. data/test/unit/analysis/{c_token.rb → tc_token.rb} +0 -0
  134. data/test/unit/document/rtc_field.rb +28 -0
  135. data/test/unit/document/{c_document.rb → tc_document.rb} +0 -0
  136. data/test/unit/document/tc_field.rb +82 -12
  137. data/test/unit/index/{tc_compound_file_io.rb → rtc_compound_file_io.rb} +0 -0
  138. data/test/unit/index/{tc_field_infos.rb → rtc_field_infos.rb} +0 -0
  139. data/test/unit/index/{tc_fields_io.rb → rtc_fields_io.rb} +0 -0
  140. data/test/unit/index/{tc_multiple_term_doc_pos_enum.rb → rtc_multiple_term_doc_pos_enum.rb} +0 -0
  141. data/test/unit/index/{tc_segment_infos.rb → rtc_segment_infos.rb} +0 -0
  142. data/test/unit/index/{tc_segment_term_docs.rb → rtc_segment_term_docs.rb} +0 -0
  143. data/test/unit/index/{tc_segment_term_enum.rb → rtc_segment_term_enum.rb} +0 -0
  144. data/test/unit/index/{tc_segment_term_vector.rb → rtc_segment_term_vector.rb} +0 -0
  145. data/test/unit/index/{tc_term_buffer.rb → rtc_term_buffer.rb} +0 -0
  146. data/test/unit/index/{tc_term_info.rb → rtc_term_info.rb} +0 -0
  147. data/test/unit/index/{tc_term_infos_io.rb → rtc_term_infos_io.rb} +0 -0
  148. data/test/unit/index/{tc_term_vectors_io.rb → rtc_term_vectors_io.rb} +0 -0
  149. data/test/unit/index/{c_index.rb → tc_index.rb} +26 -6
  150. data/test/unit/index/{c_index_reader.rb → tc_index_reader.rb} +0 -0
  151. data/test/unit/index/{c_index_writer.rb → tc_index_writer.rb} +0 -0
  152. data/test/unit/index/{c_term.rb → tc_term.rb} +0 -0
  153. data/test/unit/index/{c_term_voi.rb → tc_term_voi.rb} +0 -0
  154. data/test/unit/query_parser/{c_query_parser.rb → rtc_query_parser.rb} +14 -14
  155. data/test/unit/query_parser/tc_query_parser.rb +24 -16
  156. data/test/unit/search/{tc_similarity.rb → rtc_similarity.rb} +0 -0
  157. data/test/unit/search/rtc_sort_field.rb +14 -0
  158. data/test/unit/search/{c_filter.rb → tc_filter.rb} +11 -11
  159. data/test/unit/search/{c_fuzzy_query.rb → tc_fuzzy_query.rb} +0 -0
  160. data/test/unit/search/{c_index_searcher.rb → tc_index_searcher.rb} +0 -0
  161. data/test/unit/search/{c_search_and_sort.rb → tc_search_and_sort.rb} +0 -0
  162. data/test/unit/search/{c_sort.rb → tc_sort.rb} +0 -0
  163. data/test/unit/search/tc_sort_field.rb +20 -7
  164. data/test/unit/search/{c_spans.rb → tc_spans.rb} +0 -0
  165. data/test/unit/store/rtc_fs_store.rb +62 -0
  166. data/test/unit/store/rtc_ram_store.rb +15 -0
  167. data/test/unit/store/rtm_store.rb +150 -0
  168. data/test/unit/store/rtm_store_lock.rb +2 -0
  169. data/test/unit/store/tc_fs_store.rb +54 -40
  170. data/test/unit/store/tc_ram_store.rb +20 -0
  171. data/test/unit/store/tm_store.rb +30 -146
  172. data/test/unit/store/tm_store_lock.rb +66 -0
  173. data/test/unit/utils/{tc_bit_vector.rb → rtc_bit_vector.rb} +0 -0
  174. data/test/unit/utils/{tc_date_tools.rb → rtc_date_tools.rb} +0 -0
  175. data/test/unit/utils/{tc_number_tools.rb → rtc_number_tools.rb} +0 -0
  176. data/test/unit/utils/{tc_parameter.rb → rtc_parameter.rb} +0 -0
  177. data/test/unit/utils/{tc_priority_queue.rb → rtc_priority_queue.rb} +0 -0
  178. data/test/unit/utils/{tc_string_helper.rb → rtc_string_helper.rb} +0 -0
  179. data/test/unit/utils/{tc_thread.rb → rtc_thread.rb} +0 -0
  180. data/test/unit/utils/{tc_weak_key_hash.rb → rtc_weak_key_hash.rb} +0 -0
  181. metadata +360 -289
  182. data/test/unit/document/c_field.rb +0 -98
  183. data/test/unit/search/c_sort_field.rb +0 -27
  184. data/test/unit/store/c_fs_store.rb +0 -76
  185. data/test/unit/store/c_ram_store.rb +0 -35
  186. data/test/unit/store/m_store.rb +0 -34
  187. data/test/unit/store/m_store_lock.rb +0 -68
@@ -1,2 +1,68 @@
1
1
  module StoreLockTest
2
+ class Switch
3
+ @@counter = 0
4
+ def Switch.counter() return @@counter end
5
+ def Switch.counter=(counter) @@counter = counter end
6
+ end
7
+
8
+ def test_locking()
9
+ lock_time_out = 0.001 # we want this test to run quickly
10
+ lock1 = @dir.make_lock("l.lck")
11
+ lock2 = @dir.make_lock("l.lck")
12
+
13
+ assert(!lock2.locked?)
14
+ assert(lock1.obtain(lock_time_out))
15
+ assert(lock2.locked?)
16
+
17
+ assert(! obtain_lock_true_false(lock2))
18
+
19
+ exception_thrown = false
20
+ begin
21
+ lock2.while_locked(lock_time_out) do
22
+ assert(false, "lock should not have been obtained")
23
+ end
24
+ rescue
25
+ exception_thrown = true
26
+ ensure
27
+ assert(exception_thrown)
28
+ end
29
+
30
+ lock1.release()
31
+ assert(lock2.obtain(lock_time_out))
32
+ lock2.release()
33
+
34
+ t = Thread.new() do
35
+ lock1.while_locked(lock_time_out) do
36
+ Switch.counter = 1
37
+ # make sure lock2 obtain test was run
38
+ while Switch.counter < 2
39
+ end
40
+ Switch.counter = 3
41
+ end
42
+ end
43
+ t.run()
44
+
45
+ #make sure thread has started and lock been obtained
46
+ while Switch.counter < 1
47
+ end
48
+
49
+ assert(! obtain_lock_true_false(lock2))
50
+
51
+ Switch.counter = 2
52
+ while Switch.counter < 3
53
+ end
54
+
55
+ assert(lock2.obtain(lock_time_out))
56
+ lock2.release()
57
+ end
58
+
59
+ def obtain_lock_true_false(lock)
60
+ lock_time_out = 0.001 # we want this test to run quickly
61
+ begin
62
+ lock.obtain(lock_time_out)
63
+ return true
64
+ rescue
65
+ end
66
+ return false
67
+ end
2
68
  end
metadata CHANGED
@@ -3,11 +3,11 @@ rubygems_version: 0.8.11
3
3
  specification_version: 1
4
4
  name: ferret
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.9.0
7
- date: 2006-03-19 00:00:00 +09:00
6
+ version: 0.9.1
7
+ date: 2006-04-11 00:00:00 +09:00
8
8
  summary: Ruby indexing library.
9
9
  require_paths:
10
- - lib
10
+ - lib
11
11
  email: dbalmain@gmail.com
12
12
  homepage: http://ferret.davebalmain.com/trac
13
13
  rubyforge_project: ferret
@@ -18,301 +18,372 @@ bindir: bin
18
18
  has_rdoc: true
19
19
  required_ruby_version: !ruby/object:Gem::Version::Requirement
20
20
  requirements:
21
- -
22
- - ">"
23
- - !ruby/object:Gem::Version
24
- version: 0.0.0
21
+ - - ">"
22
+ - !ruby/object:Gem::Version
23
+ version: 0.0.0
25
24
  version:
26
25
  platform: ruby
27
26
  signing_key:
28
27
  cert_chain:
29
28
  authors:
30
- - David Balmain
29
+ - David Balmain
31
30
  files:
32
- - setup.rb
33
- - Rakefile
34
- - README
35
- - MIT-LICENSE
36
- - TODO
37
- - TUTORIAL
38
- - CHANGELOG
39
- - ext/ferret.c
40
- - ext/lang.c
41
- - ext/r_analysis.c
42
- - ext/r_doc.c
43
- - ext/r_index_io.c
44
- - ext/r_qparser.c
45
- - ext/r_search.c
46
- - ext/r_store.c
47
- - ext/r_term.c
48
- - ext/extconf.rb
49
- - ext/inc
50
- - ext/analysis.c
51
- - ext/document.c
52
- - ext/compound_io.c
53
- - ext/index_rw.c
54
- - ext/termdocs.c
55
- - ext/vector.c
56
- - ext/field.c
57
- - ext/term.c
58
- - ext/q_parser.c
59
- - ext/q_const_score.c
60
- - ext/q_boolean.c
61
- - ext/q_match_all.c
62
- - ext/q_phrase.c
63
- - ext/q_fuzzy.c
64
- - ext/search.c
65
- - ext/ind.c
66
- - ext/dummy.exe
67
- - ext/q_multi_phrase.c
68
- - ext/q_wildcard.c
69
- - ext/q_range.c
70
- - ext/q_prefix.c
71
- - ext/q_span.c
72
- - ext/filter.c
73
- - ext/similarity.c
74
- - ext/sort.c
75
- - ext/q_term.c
76
- - ext/index_io.c
77
- - ext/fs_store.c
78
- - ext/ram_store.c
79
- - ext/store.c
80
- - ext/hashset.c
81
- - ext/array.c
82
- - ext/bitvector.c
83
- - ext/helper.c
84
- - ext/global.c
85
- - ext/hash.c
86
- - ext/priorityqueue.c
87
- - ext/document.h
88
- - ext/store.h
89
- - ext/array.h
90
- - ext/priorityqueue.h
91
- - ext/hashset.h
92
- - ext/helper.h
93
- - ext/global.h
94
- - ext/bitvector.h
95
- - ext/analysis.h
96
- - ext/hash.h
97
- - ext/search.h
98
- - ext/lang.h
99
- - ext/ferret.h
100
- - ext/index.h
101
- - ext/inc/lang.h
102
- - lib/ferret.rb
103
- - lib/rferret.rb
104
- - lib/ferret/analysis.rb
105
- - lib/ferret/document.rb
106
- - lib/ferret/index.rb
107
- - lib/ferret/search.rb
108
- - lib/ferret/query_parser.rb
109
- - lib/ferret/stemmers.rb
110
- - lib/ferret/store.rb
111
- - lib/ferret/utils.rb
112
- - lib/ferret/analysis/standard_tokenizer.rb
113
- - lib/ferret/analysis/word_list_loader.rb
114
- - lib/ferret/analysis/tokenizers.rb
115
- - lib/ferret/analysis/token.rb
116
- - lib/ferret/analysis/analyzers.rb
117
- - lib/ferret/analysis/token_filters.rb
118
- - lib/ferret/analysis/token_stream.rb
119
- - lib/ferret/document/document.rb
120
- - lib/ferret/document/field.rb
121
- - lib/ferret/index/fields_io.rb
122
- - lib/ferret/index/index.rb
123
- - lib/ferret/index/segment_merge_queue.rb
124
- - lib/ferret/index/segment_term_enum.rb
125
- - lib/ferret/index/term_info.rb
126
- - lib/ferret/index/field_infos.rb
127
- - lib/ferret/index/segment_reader.rb
128
- - lib/ferret/index/index_file_names.rb
129
- - lib/ferret/index/index_reader.rb
130
- - lib/ferret/index/term_infos_io.rb
131
- - lib/ferret/index/term_enum.rb
132
- - lib/ferret/index/term.rb
133
- - lib/ferret/index/segment_merge_info.rb
134
- - lib/ferret/index/segment_merger.rb
135
- - lib/ferret/index/segment_infos.rb
136
- - lib/ferret/index/term_doc_enum.rb
137
- - lib/ferret/index/term_buffer.rb
138
- - lib/ferret/index/multi_reader.rb
139
- - lib/ferret/index/term_vectors_io.rb
140
- - lib/ferret/index/index_writer.rb
141
- - lib/ferret/index/term_vector_offset_info.rb
142
- - lib/ferret/index/segment_term_vector.rb
143
- - lib/ferret/index/document_writer.rb
144
- - lib/ferret/index/compound_file_io.rb
145
- - lib/ferret/index/multiple_term_doc_pos_enum.rb
146
- - lib/ferret/search/query.rb
147
- - lib/ferret/search/non_matching_scorer.rb
148
- - lib/ferret/search/top_field_docs.rb
149
- - lib/ferret/search/weight.rb
150
- - lib/ferret/search/field_doc.rb
151
- - lib/ferret/search/hit_queue.rb
152
- - lib/ferret/search/sort.rb
153
- - lib/ferret/search/disjunction_sum_scorer.rb
154
- - lib/ferret/search/boolean_scorer.rb
155
- - lib/ferret/search/boolean_query.rb
156
- - lib/ferret/search/field_sorted_hit_queue.rb
157
- - lib/ferret/search/conjunction_scorer.rb
158
- - lib/ferret/search/top_docs.rb
159
- - lib/ferret/search/req_opt_sum_scorer.rb
160
- - lib/ferret/search/boolean_clause.rb
161
- - lib/ferret/search/score_doc_comparator.rb
162
- - lib/ferret/search/req_excl_scorer.rb
163
- - lib/ferret/search/explanation.rb
164
- - lib/ferret/search/index_searcher.rb
165
- - lib/ferret/search/term_scorer.rb
166
- - lib/ferret/search/filter.rb
167
- - lib/ferret/search/similarity.rb
168
- - lib/ferret/search/fuzzy_term_enum.rb
169
- - lib/ferret/search/sort_field.rb
170
- - lib/ferret/search/hit_collector.rb
171
- - lib/ferret/search/term_query.rb
172
- - lib/ferret/search/scorer.rb
173
- - lib/ferret/search/score_doc.rb
174
- - lib/ferret/search/prefix_query.rb
175
- - lib/ferret/search/fuzzy_query.rb
176
- - lib/ferret/search/spans.rb
177
- - lib/ferret/search/caching_wrapper_filter.rb
178
- - lib/ferret/search/filtered_term_enum.rb
179
- - lib/ferret/search/multi_term_query.rb
180
- - lib/ferret/search/query_filter.rb
181
- - lib/ferret/search/wildcard_query.rb
182
- - lib/ferret/search/wildcard_term_enum.rb
183
- - lib/ferret/search/phrase_query.rb
184
- - lib/ferret/search/exact_phrase_scorer.rb
185
- - lib/ferret/search/sloppy_phrase_scorer.rb
186
- - lib/ferret/search/phrase_positions.rb
187
- - lib/ferret/search/phrase_scorer.rb
188
- - lib/ferret/search/range_query.rb
189
- - lib/ferret/search/multi_phrase_query.rb
190
- - lib/ferret/search/filtered_query.rb
191
- - lib/ferret/search/sort_comparator.rb
192
- - lib/ferret/search/range_filter.rb
193
- - lib/ferret/search/field_cache.rb
194
- - lib/ferret/search/match_all_query.rb
195
- - lib/ferret/search/spans/near_spans_enum.rb
196
- - lib/ferret/search/spans/span_first_query.rb
197
- - lib/ferret/search/spans/spans_enum.rb
198
- - lib/ferret/search/spans/span_not_query.rb
199
- - lib/ferret/search/spans/span_near_query.rb
200
- - lib/ferret/search/spans/span_or_query.rb
201
- - lib/ferret/search/spans/span_term_query.rb
202
- - lib/ferret/search/spans/span_query.rb
203
- - lib/ferret/search/spans/span_scorer.rb
204
- - lib/ferret/search/spans/span_weight.rb
205
- - lib/ferret/query_parser/query_parser.tab.rb
206
- - lib/ferret/stemmers/porter_stemmer.rb
207
- - lib/ferret/store/index_io.rb
208
- - lib/ferret/store/directory.rb
209
- - lib/ferret/store/buffered_index_io.rb
210
- - lib/ferret/store/fs_store.rb
211
- - lib/ferret/store/ram_store.rb
212
- - lib/ferret/utils/priority_queue.rb
213
- - lib/ferret/utils/bit_vector.rb
214
- - lib/ferret/utils/parameter.rb
215
- - lib/ferret/utils/weak_key_hash.rb
216
- - lib/ferret/utils/string_helper.rb
217
- - lib/ferret/utils/number_tools.rb
218
- - lib/ferret/utils/date_tools.rb
219
- - lib/ferret/utils/thread_local.rb
220
- - test/test_helper.rb
221
- - test/test_all.rb
222
- - test/unit/ts_document.rb
223
- - test/unit/ts_index.rb
224
- - test/unit/ts_store.rb
225
- - test/unit/ts_analysis.rb
226
- - test/unit/ts_utils.rb
227
- - test/unit/ts_search.rb
228
- - test/unit/ts_query_parser.rb
229
- - test/unit/utils/tc_bit_vector.rb
230
- - test/unit/utils/tc_string_helper.rb
231
- - test/unit/utils/tc_priority_queue.rb
232
- - test/unit/utils/tc_number_tools.rb
233
- - test/unit/utils/tc_date_tools.rb
234
- - test/unit/utils/tc_parameter.rb
235
- - test/unit/utils/tc_weak_key_hash.rb
236
- - test/unit/utils/tc_thread.rb
237
- - test/unit/analysis/tc_lower_case_tokenizer.rb
238
- - test/unit/analysis/tc_lower_case_filter.rb
239
- - test/unit/analysis/tc_porter_stem_filter.rb
240
- - test/unit/analysis/tc_letter_tokenizer.rb
241
- - test/unit/analysis/tc_standard_tokenizer.rb
242
- - test/unit/analysis/tc_stop_analyzer.rb
243
- - test/unit/analysis/tc_stop_filter.rb
244
- - test/unit/analysis/tc_word_list_loader.rb
245
- - test/unit/analysis/tc_per_field_analyzer_wrapper.rb
246
- - test/unit/analysis/tc_white_space_analyzer.rb
247
- - test/unit/analysis/tc_analyzer.rb
248
- - test/unit/analysis/tc_standard_analyzer.rb
249
- - test/unit/analysis/tc_white_space_tokenizer.rb
250
- - test/unit/analysis/c_token.rb
251
- - test/unit/index/tc_segment_term_docs.rb
252
- - test/unit/index/tc_term_infos_io.rb
253
- - test/unit/index/tc_fields_io.rb
254
- - test/unit/index/tc_term_buffer.rb
255
- - test/unit/index/tc_segment_infos.rb
256
- - test/unit/index/tc_segment_term_vector.rb
257
- - test/unit/index/tc_term_vectors_io.rb
258
- - test/unit/index/th_doc.rb
259
- - test/unit/index/tc_compound_file_io.rb
260
- - test/unit/index/tc_segment_term_enum.rb
261
- - test/unit/index/tc_field_infos.rb
262
- - test/unit/index/tc_term_info.rb
263
- - test/unit/index/c_index.rb
264
- - test/unit/index/c_index_reader.rb
265
- - test/unit/index/tc_multiple_term_doc_pos_enum.rb
266
- - test/unit/index/c_index_writer.rb
267
- - test/unit/index/c_term.rb
268
- - test/unit/index/c_term_voi.rb
269
- - test/unit/store/tc_ram_store.rb
270
- - test/unit/store/tm_store_lock.rb
271
- - test/unit/store/tc_fs_store.rb
272
- - test/unit/store/tm_store.rb
273
- - test/unit/store/c_fs_store.rb
274
- - test/unit/store/c_ram_store.rb
275
- - test/unit/store/m_store_lock.rb
276
- - test/unit/store/m_store.rb
277
- - test/unit/document/c_field.rb
278
- - test/unit/document/tc_field.rb
279
- - test/unit/document/c_document.rb
280
- - test/unit/query_parser/tc_query_parser.rb
281
- - test/unit/query_parser/c_query_parser.rb
282
- - test/unit/search/tc_similarity.rb
283
- - test/unit/search/tc_sort_field.rb
284
- - test/unit/search/c_filter.rb
285
- - test/unit/search/c_fuzzy_query.rb
286
- - test/unit/search/c_index_searcher.rb
287
- - test/unit/search/c_search_and_sort.rb
288
- - test/unit/search/c_sort_field.rb
289
- - test/unit/search/c_sort.rb
290
- - test/unit/search/c_spans.rb
291
- - test/longrunning/tc_numbertools.rb
292
- - test/longrunning/tm_store.rb
293
- - test/benchmark/tb_rw_vint.rb
294
- - test/benchmark/tb_ram_store.rb
295
- - test/functional/thread_safety_index_test.rb
296
- - test/functional/thread_safety_test.rb
297
- - test/utils/number_to_spoken.rb
298
- - test/unit/analysis/data/wordfile
299
- - rake_utils/code_statistics.rb
31
+ - setup.rb
32
+ - Rakefile
33
+ - README
34
+ - MIT-LICENSE
35
+ - TODO
36
+ - TUTORIAL
37
+ - CHANGELOG
38
+ - ext/ferret.c
39
+ - ext/lang.c
40
+ - ext/r_analysis.c
41
+ - ext/r_doc.c
42
+ - ext/r_index_io.c
43
+ - ext/r_qparser.c
44
+ - ext/r_search.c
45
+ - ext/r_store.c
46
+ - ext/r_term.c
47
+ - ext/extconf.rb
48
+ - ext/inc
49
+ - ext/analysis.c
50
+ - ext/stopwords.c
51
+ - ext/document.c
52
+ - ext/compound_io.c
53
+ - ext/index_rw.c
54
+ - ext/termdocs.c
55
+ - ext/vector.c
56
+ - ext/field.c
57
+ - ext/term.c
58
+ - ext/q_parser.c
59
+ - ext/q_const_score.c
60
+ - ext/q_boolean.c
61
+ - ext/q_match_all.c
62
+ - ext/q_phrase.c
63
+ - ext/q_fuzzy.c
64
+ - ext/search.c
65
+ - ext/dummy.exe
66
+ - ext/q_multi_phrase.c
67
+ - ext/q_wildcard.c
68
+ - ext/ind.c
69
+ - ext/q_range.c
70
+ - ext/q_prefix.c
71
+ - ext/q_span.c
72
+ - ext/filter.c
73
+ - ext/similarity.c
74
+ - ext/sort.c
75
+ - ext/q_term.c
76
+ - ext/q_filtered_query.c
77
+ - ext/index_io.c
78
+ - ext/fs_store.c
79
+ - ext/ram_store.c
80
+ - ext/store.c
81
+ - ext/hashset.c
82
+ - ext/array.c
83
+ - ext/bitvector.c
84
+ - ext/helper.c
85
+ - ext/global.c
86
+ - ext/hash.c
87
+ - ext/except.c
88
+ - ext/priorityqueue.c
89
+ - ext/document.h
90
+ - ext/store.h
91
+ - ext/array.h
92
+ - ext/priorityqueue.h
93
+ - ext/hashset.h
94
+ - ext/helper.h
95
+ - ext/global.h
96
+ - ext/lang.h
97
+ - ext/bitvector.h
98
+ - ext/analysis.h
99
+ - ext/hash.h
100
+ - ext/search.h
101
+ - ext/ferret.h
102
+ - ext/index.h
103
+ - ext/except.h
104
+ - ext/similarity.h
105
+ - ext/libstemmer.h
106
+ - ext/libstemmer.c
107
+ - ext/modules.h
108
+ - ext/utilities.c
109
+ - ext/api.h
110
+ - ext/api.c
111
+ - ext/header.h
112
+ - ext/stem_ISO_8859_1_italian.c
113
+ - ext/stem_UTF_8_portuguese.c
114
+ - ext/stem_UTF_8_portuguese.h
115
+ - ext/stem_UTF_8_french.c
116
+ - ext/stem_UTF_8_spanish.c
117
+ - ext/stem_UTF_8_dutch.c
118
+ - ext/stem_ISO_8859_1_italian.h
119
+ - ext/stem_UTF_8_german.c
120
+ - ext/stem_UTF_8_french.h
121
+ - ext/stem_UTF_8_spanish.h
122
+ - ext/stem_ISO_8859_1_english.c
123
+ - ext/stem_ISO_8859_1_norwegian.c
124
+ - ext/stem_UTF_8_porter.c
125
+ - ext/stem_UTF_8_dutch.h
126
+ - ext/stem_UTF_8_german.h
127
+ - ext/stem_ISO_8859_1_english.h
128
+ - ext/stem_ISO_8859_1_norwegian.h
129
+ - ext/stem_UTF_8_porter.h
130
+ - ext/stem_ISO_8859_1_portuguese.c
131
+ - ext/stem_UTF_8_russian.c
132
+ - ext/stem_ISO_8859_1_spanish.c
133
+ - ext/tags
134
+ - ext/stem_ISO_8859_1_french.c
135
+ - ext/stem_ISO_8859_1_portuguese.h
136
+ - ext/stem_ISO_8859_1_dutch.c
137
+ - ext/stem_UTF_8_russian.h
138
+ - ext/stem_KOI8_R_russian.c
139
+ - ext/stem_ISO_8859_1_german.c
140
+ - ext/stem_ISO_8859_1_spanish.h
141
+ - ext/stem_ISO_8859_1_french.h
142
+ - ext/stem_ISO_8859_1_porter.c
143
+ - ext/stem_ISO_8859_1_dutch.h
144
+ - ext/stem_UTF_8_finnish.c
145
+ - ext/stem_KOI8_R_russian.h
146
+ - ext/stem_ISO_8859_1_german.h
147
+ - ext/stem_ISO_8859_1_porter.h
148
+ - ext/stem_UTF_8_finnish.h
149
+ - ext/stem_UTF_8_danish.c
150
+ - ext/stem_UTF_8_swedish.c
151
+ - ext/stem_UTF_8_danish.h
152
+ - ext/stem_UTF_8_swedish.h
153
+ - ext/stem_ISO_8859_1_finnish.c
154
+ - ext/stem_UTF_8_italian.c
155
+ - ext/stem_ISO_8859_1_finnish.h
156
+ - ext/stem_UTF_8_italian.h
157
+ - ext/stem_ISO_8859_1_swedish.c
158
+ - ext/stem_ISO_8859_1_danish.c
159
+ - ext/stem_UTF_8_english.c
160
+ - ext/stem_UTF_8_norwegian.c
161
+ - ext/stem_ISO_8859_1_swedish.h
162
+ - ext/stem_ISO_8859_1_danish.h
163
+ - ext/stem_UTF_8_english.h
164
+ - ext/stem_UTF_8_norwegian.h
165
+ - ext/inc/lang.h
166
+ - ext/inc/except.h
167
+ - lib/ferret.rb
168
+ - lib/rferret.rb
169
+ - lib/ferret/analysis.rb
170
+ - lib/ferret/document.rb
171
+ - lib/ferret/index.rb
172
+ - lib/ferret/search.rb
173
+ - lib/ferret/query_parser.rb
174
+ - lib/ferret/stemmers.rb
175
+ - lib/ferret/store.rb
176
+ - lib/ferret/utils.rb
177
+ - lib/ferret/analysis/standard_tokenizer.rb
178
+ - lib/ferret/analysis/word_list_loader.rb
179
+ - lib/ferret/analysis/tokenizers.rb
180
+ - lib/ferret/analysis/token.rb
181
+ - lib/ferret/analysis/analyzers.rb
182
+ - lib/ferret/analysis/token_filters.rb
183
+ - lib/ferret/analysis/token_stream.rb
184
+ - lib/ferret/document/document.rb
185
+ - lib/ferret/document/field.rb
186
+ - lib/ferret/index/fields_io.rb
187
+ - lib/ferret/index/index.rb
188
+ - lib/ferret/index/segment_merge_queue.rb
189
+ - lib/ferret/index/segment_term_enum.rb
190
+ - lib/ferret/index/term_info.rb
191
+ - lib/ferret/index/field_infos.rb
192
+ - lib/ferret/index/segment_reader.rb
193
+ - lib/ferret/index/index_file_names.rb
194
+ - lib/ferret/index/index_reader.rb
195
+ - lib/ferret/index/term_infos_io.rb
196
+ - lib/ferret/index/term_enum.rb
197
+ - lib/ferret/index/term.rb
198
+ - lib/ferret/index/segment_merge_info.rb
199
+ - lib/ferret/index/segment_merger.rb
200
+ - lib/ferret/index/segment_infos.rb
201
+ - lib/ferret/index/term_doc_enum.rb
202
+ - lib/ferret/index/term_buffer.rb
203
+ - lib/ferret/index/multi_reader.rb
204
+ - lib/ferret/index/term_vectors_io.rb
205
+ - lib/ferret/index/index_writer.rb
206
+ - lib/ferret/index/term_vector_offset_info.rb
207
+ - lib/ferret/index/segment_term_vector.rb
208
+ - lib/ferret/index/document_writer.rb
209
+ - lib/ferret/index/compound_file_io.rb
210
+ - lib/ferret/index/multiple_term_doc_pos_enum.rb
211
+ - lib/ferret/search/query.rb
212
+ - lib/ferret/search/non_matching_scorer.rb
213
+ - lib/ferret/search/top_field_docs.rb
214
+ - lib/ferret/search/weight.rb
215
+ - lib/ferret/search/field_doc.rb
216
+ - lib/ferret/search/hit_queue.rb
217
+ - lib/ferret/search/sort.rb
218
+ - lib/ferret/search/disjunction_sum_scorer.rb
219
+ - lib/ferret/search/boolean_scorer.rb
220
+ - lib/ferret/search/boolean_query.rb
221
+ - lib/ferret/search/field_sorted_hit_queue.rb
222
+ - lib/ferret/search/conjunction_scorer.rb
223
+ - lib/ferret/search/top_docs.rb
224
+ - lib/ferret/search/req_opt_sum_scorer.rb
225
+ - lib/ferret/search/boolean_clause.rb
226
+ - lib/ferret/search/score_doc_comparator.rb
227
+ - lib/ferret/search/req_excl_scorer.rb
228
+ - lib/ferret/search/explanation.rb
229
+ - lib/ferret/search/index_searcher.rb
230
+ - lib/ferret/search/term_scorer.rb
231
+ - lib/ferret/search/filter.rb
232
+ - lib/ferret/search/similarity.rb
233
+ - lib/ferret/search/fuzzy_term_enum.rb
234
+ - lib/ferret/search/sort_field.rb
235
+ - lib/ferret/search/hit_collector.rb
236
+ - lib/ferret/search/term_query.rb
237
+ - lib/ferret/search/scorer.rb
238
+ - lib/ferret/search/score_doc.rb
239
+ - lib/ferret/search/prefix_query.rb
240
+ - lib/ferret/search/fuzzy_query.rb
241
+ - lib/ferret/search/spans.rb
242
+ - lib/ferret/search/caching_wrapper_filter.rb
243
+ - lib/ferret/search/filtered_term_enum.rb
244
+ - lib/ferret/search/multi_term_query.rb
245
+ - lib/ferret/search/query_filter.rb
246
+ - lib/ferret/search/wildcard_query.rb
247
+ - lib/ferret/search/wildcard_term_enum.rb
248
+ - lib/ferret/search/phrase_query.rb
249
+ - lib/ferret/search/exact_phrase_scorer.rb
250
+ - lib/ferret/search/sloppy_phrase_scorer.rb
251
+ - lib/ferret/search/phrase_positions.rb
252
+ - lib/ferret/search/phrase_scorer.rb
253
+ - lib/ferret/search/range_query.rb
254
+ - lib/ferret/search/multi_phrase_query.rb
255
+ - lib/ferret/search/filtered_query.rb
256
+ - lib/ferret/search/sort_comparator.rb
257
+ - lib/ferret/search/range_filter.rb
258
+ - lib/ferret/search/field_cache.rb
259
+ - lib/ferret/search/match_all_query.rb
260
+ - lib/ferret/search/spans/near_spans_enum.rb
261
+ - lib/ferret/search/spans/span_first_query.rb
262
+ - lib/ferret/search/spans/spans_enum.rb
263
+ - lib/ferret/search/spans/span_not_query.rb
264
+ - lib/ferret/search/spans/span_near_query.rb
265
+ - lib/ferret/search/spans/span_or_query.rb
266
+ - lib/ferret/search/spans/span_term_query.rb
267
+ - lib/ferret/search/spans/span_query.rb
268
+ - lib/ferret/search/spans/span_scorer.rb
269
+ - lib/ferret/search/spans/span_weight.rb
270
+ - lib/ferret/query_parser/query_parser.tab.rb
271
+ - lib/ferret/stemmers/porter_stemmer.rb
272
+ - lib/ferret/store/index_io.rb
273
+ - lib/ferret/store/directory.rb
274
+ - lib/ferret/store/buffered_index_io.rb
275
+ - lib/ferret/store/fs_store.rb
276
+ - lib/ferret/store/ram_store.rb
277
+ - lib/ferret/utils/priority_queue.rb
278
+ - lib/ferret/utils/bit_vector.rb
279
+ - lib/ferret/utils/parameter.rb
280
+ - lib/ferret/utils/weak_key_hash.rb
281
+ - lib/ferret/utils/string_helper.rb
282
+ - lib/ferret/utils/number_tools.rb
283
+ - lib/ferret/utils/date_tools.rb
284
+ - lib/ferret/utils/thread_local.rb
285
+ - test/test_helper.rb
286
+ - test/test_all.rb
287
+ - test/unit/ts_document.rb
288
+ - test/unit/ts_index.rb
289
+ - test/unit/ts_store.rb
290
+ - test/unit/ts_analysis.rb
291
+ - test/unit/ts_utils.rb
292
+ - test/unit/ts_search.rb
293
+ - test/unit/ts_query_parser.rb
294
+ - test/unit/utils/rtc_thread.rb
295
+ - test/unit/utils/rtc_priority_queue.rb
296
+ - test/unit/utils/rtc_bit_vector.rb
297
+ - test/unit/utils/rtc_parameter.rb
298
+ - test/unit/utils/rtc_weak_key_hash.rb
299
+ - test/unit/utils/rtc_string_helper.rb
300
+ - test/unit/utils/rtc_date_tools.rb
301
+ - test/unit/utils/rtc_number_tools.rb
302
+ - test/unit/analysis/rtc_standard_tokenizer.rb
303
+ - test/unit/analysis/rtc_letter_tokenizer.rb
304
+ - test/unit/analysis/rtc_stop_filter.rb
305
+ - test/unit/analysis/rtc_stop_analyzer.rb
306
+ - test/unit/analysis/ctc_analyzer.rb
307
+ - test/unit/analysis/tc_analyzer.rb
308
+ - test/unit/analysis/rtc_standard_analyzer.rb
309
+ - test/unit/analysis/rtc_lower_case_filter.rb
310
+ - test/unit/analysis/rtc_porter_stem_filter.rb
311
+ - test/unit/analysis/rtc_lower_case_tokenizer.rb
312
+ - test/unit/analysis/rtc_white_space_tokenizer.rb
313
+ - test/unit/analysis/tc_token.rb
314
+ - test/unit/analysis/ctc_tokenstream.rb
315
+ - test/unit/analysis/rtc_white_space_analyzer.rb
316
+ - test/unit/analysis/rtc_word_list_loader.rb
317
+ - test/unit/analysis/rtc_per_field_analyzer_wrapper.rb
318
+ - test/unit/index/rtc_term_buffer.rb
319
+ - test/unit/index/rtc_fields_io.rb
320
+ - test/unit/index/rtc_term_vectors_io.rb
321
+ - test/unit/index/rtc_segment_infos.rb
322
+ - test/unit/index/tc_index.rb
323
+ - test/unit/index/rtc_compound_file_io.rb
324
+ - test/unit/index/rtc_field_infos.rb
325
+ - test/unit/index/tc_index_writer.rb
326
+ - test/unit/index/th_doc.rb
327
+ - test/unit/index/rtc_segment_term_enum.rb
328
+ - test/unit/index/rtc_term_info.rb
329
+ - test/unit/index/tc_term.rb
330
+ - test/unit/index/tc_term_voi.rb
331
+ - test/unit/index/tc_index_reader.rb
332
+ - test/unit/index/rtc_term_infos_io.rb
333
+ - test/unit/index/rtc_segment_term_docs.rb
334
+ - test/unit/index/rtc_segment_term_vector.rb
335
+ - test/unit/index/rtc_multiple_term_doc_pos_enum.rb
336
+ - test/unit/store/rtm_store_lock.rb
337
+ - test/unit/store/tm_store_lock.rb
338
+ - test/unit/store/tc_fs_store.rb
339
+ - test/unit/store/tc_ram_store.rb
340
+ - test/unit/store/rtm_store.rb
341
+ - test/unit/store/tm_store.rb
342
+ - test/unit/store/rtc_ram_store.rb
343
+ - test/unit/store/rtc_fs_store.rb
344
+ - test/unit/document/tc_field.rb
345
+ - test/unit/document/rtc_field.rb
346
+ - test/unit/document/tc_document.rb
347
+ - test/unit/query_parser/tc_query_parser.rb
348
+ - test/unit/query_parser/rtc_query_parser.rb
349
+ - test/unit/search/tc_fuzzy_query.rb
350
+ - test/unit/search/tc_index_searcher.rb
351
+ - test/unit/search/tc_spans.rb
352
+ - test/unit/search/tc_filter.rb
353
+ - test/unit/search/tc_sort.rb
354
+ - test/unit/search/tc_sort_field.rb
355
+ - test/unit/search/rtc_sort_field.rb
356
+ - test/unit/search/rtc_similarity.rb
357
+ - test/unit/search/tc_search_and_sort.rb
358
+ - test/longrunning/tc_numbertools.rb
359
+ - test/longrunning/tm_store.rb
360
+ - test/benchmark/tb_rw_vint.rb
361
+ - test/benchmark/tb_ram_store.rb
362
+ - test/functional/thread_safety_index_test.rb
363
+ - test/functional/thread_safety_test.rb
364
+ - test/utils/number_to_spoken.rb
365
+ - test/unit/analysis/data/wordfile
366
+ - rake_utils/code_statistics.rb
300
367
  test_files: []
368
+
301
369
  rdoc_options:
302
- - "--title"
303
- - "Ferret -- Ruby Indexer"
304
- - "--main"
305
- - README
306
- - "--line-numbers"
307
- - TUTORIAL
308
- - TODO
370
+ - --title
371
+ - Ferret -- Ruby Indexer
372
+ - --main
373
+ - README
374
+ - --line-numbers
375
+ - TUTORIAL
376
+ - TODO
309
377
  extra_rdoc_files:
310
- - README
311
- - TODO
312
- - TUTORIAL
313
- - MIT-LICENSE
378
+ - README
379
+ - TODO
380
+ - TUTORIAL
381
+ - MIT-LICENSE
314
382
  executables: []
383
+
315
384
  extensions:
316
- - ext/extconf.rb
385
+ - ext/extconf.rb
317
386
  requirements: []
318
- dependencies: []
387
+
388
+ dependencies: []
389
+