ferret 0.10.0 → 0.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/ext/r_index.c CHANGED
@@ -1799,7 +1799,7 @@ frt_get_lazy_doc(LazyDoc *lazy_doc)
1799
1799
  rb_ivar_set(self, id_data, rdata);
1800
1800
 
1801
1801
  for (i = 0; i < lazy_doc->size; i++) {
1802
- RARRAY(rfields)->ptr[i] = rb_intern(lazy_doc->fields[i]->name);
1802
+ RARRAY(rfields)->ptr[i] = ID2SYM(rb_intern(lazy_doc->fields[i]->name));
1803
1803
  RARRAY(rfields)->len++;
1804
1804
  }
1805
1805
  rb_ivar_set(self, id_fields, rfields);
data/ext/r_qparser.c CHANGED
@@ -160,7 +160,7 @@ frt_qp_init(int argc, VALUE *argv, VALUE self)
160
160
  qp->wild_lower = RTEST(rval);
161
161
  }
162
162
  if (Qnil != (rval = rb_hash_aref(roptions, sym_or_default))) {
163
- qp->or_default = (FIX2INT(rval) == BC_MUST) ? false : true;
163
+ qp->or_default = RTEST(rval);
164
164
  }
165
165
  if (Qnil != (rval = rb_hash_aref(roptions, sym_default_slop))) {
166
166
  qp->def_slop = FIX2INT(rval);
data/ext/search.c CHANGED
@@ -1199,7 +1199,7 @@ static TopDocs *cdfsea_search_w(Searcher *self, Weight *w, int fd, int nd,
1199
1199
  Filter *f, Sort *s, filter_ft ff, bool load)
1200
1200
  {
1201
1201
  (void)self; (void)w; (void)fd; (void)nd;
1202
- (void)f; (void)s; (void)ff, (void)load;
1202
+ (void)f; (void)s; (void)ff; (void)load;
1203
1203
  RAISE(UNSUPPORTED_ERROR, UNSUPPORTED_ERROR_MSG);
1204
1204
  return NULL;
1205
1205
  }
@@ -1208,7 +1208,7 @@ static TopDocs *cdfsea_search(Searcher *self, Query *q, int fd, int nd,
1208
1208
  Filter *f, Sort *s, filter_ft ff, bool load)
1209
1209
  {
1210
1210
  (void)self; (void)q; (void)fd; (void)nd;
1211
- (void)f; (void)s; (void)ff, (void)load;
1211
+ (void)f; (void)s; (void)ff; (void)load;
1212
1212
  RAISE(UNSUPPORTED_ERROR, UNSUPPORTED_ERROR_MSG);
1213
1213
  return NULL;
1214
1214
  }
@@ -24,8 +24,8 @@ module Ferret
24
24
  # A Document is a set of fields. Each field has a name and an array of
25
25
  # textual values. If you are coming from a Lucene background you should note
26
26
  # that Fields don't have any properties except for the boost property. You
27
- # should use the FieldInfos class to set field properties accross the whole
28
- # index instead.
27
+ # should use the Ferret::Index::FieldInfos class to set field properties
28
+ # accross the whole index instead.
29
29
  #
30
30
  # === Boost
31
31
  #
@@ -35,9 +35,9 @@ module Ferret
35
35
  # You may, for example, want to boost products that have a higher user
36
36
  # rating so that they are more likely to appear in search results.
37
37
  #
38
- # Note: that fields which are _not_ stored (see FieldInfos) are _not_
39
- # available in documents retrieved from the index, e.g. Searcher#doc or
40
- # IndexReader#doc.
38
+ # Note: that fields which are _not_ stored (see Ferret::Index::FieldInfos)
39
+ # are _not_ available in documents retrieved from the index, e.g.
40
+ # Ferret::Search::Searcher#doc or Ferret::Index::IndexReader#doc.
41
41
  #
42
42
  # Note: that modifying a Document retrieved from the index will not modify
43
43
  # the document contained within the index. You need to delete the old
data/lib/ferret/index.rb CHANGED
@@ -199,7 +199,8 @@ module Ferret::Index
199
199
  else
200
200
  id = doc[@key].to_s
201
201
  if id
202
- delete(id)
202
+ ensure_writer_open()
203
+ @writer.delete(@key, id)
203
204
  @writer.commit
204
205
  end
205
206
  end
@@ -247,7 +248,7 @@ module Ferret::Index
247
248
  ensure_searcher_open()
248
249
  query = process_query(query)
249
250
 
250
- @searcher.search_each(query) do |doc, score|
251
+ @searcher.search_each(query, options) do |doc, score|
251
252
  yield doc, score
252
253
  end
253
254
  end
@@ -575,3 +576,7 @@ module Ferret::Index
575
576
 
576
577
  end
577
578
  end
579
+
580
+ module Ferret
581
+ I = Index::Index
582
+ end
@@ -38,7 +38,7 @@ class AnalyzerTest < Test::Unit::TestCase
38
38
  assert_equal(Token.new("ADDRESS", 39, 46), t.next())
39
39
  assert(! t.next())
40
40
  end
41
- end
41
+ end if Ferret.locale.downcase.index("utf")
42
42
 
43
43
  class AsciiLetterAnalyzerTest < Test::Unit::TestCase
44
44
  include Ferret::Analysis
@@ -131,7 +131,7 @@ class LetterAnalyzerTest < Test::Unit::TestCase
131
131
  assert_equal(Token.new("öîí", 80, 86), t.next)
132
132
  assert(! t.next())
133
133
  end
134
- end
134
+ end if Ferret.locale.downcase.index("utf")
135
135
 
136
136
  class AsciiWhiteSpaceAnalyzerTest < Test::Unit::TestCase
137
137
  include Ferret::Analysis
@@ -214,7 +214,7 @@ class WhiteSpaceAnalyzerTest < Test::Unit::TestCase
214
214
  assert_equal(Token.new('áägç®êëì¯úøã¬öîí', 55, 86), t.next)
215
215
  assert(! t.next())
216
216
  end
217
- end
217
+ end if Ferret.locale.downcase.index("utf")
218
218
 
219
219
  class AsciiStandardAnalyzerTest < Test::Unit::TestCase
220
220
  include Ferret::Analysis
@@ -338,7 +338,7 @@ class StandardAnalyzerTest < Test::Unit::TestCase
338
338
  assert_equal(Token.new('öîí', 142, 148), t2.next)
339
339
  assert(! t2.next())
340
340
  end
341
- end
341
+ end if Ferret.locale.downcase.index("utf")
342
342
 
343
343
  class PerFieldAnalyzerTest < Test::Unit::TestCase
344
344
  include Ferret::Analysis
@@ -529,4 +529,4 @@ class CustomAnalyzerTest < Test::Unit::TestCase
529
529
  assert_equal(Token.new("dêbater", 36, 44), t.next)
530
530
  assert(! t.next())
531
531
  end
532
- end
532
+ end if Ferret.locale.downcase.index("utf")
@@ -108,7 +108,7 @@ class LetterTokenizerTest < Test::Unit::TestCase
108
108
  assert_equal(Token.new('öîí', 80, 86), t.next)
109
109
  assert(! t.next())
110
110
  end
111
- end
111
+ end if Ferret.locale.downcase.index("utf")
112
112
 
113
113
  class AsciiWhiteSpaceTokenizerTest < Test::Unit::TestCase
114
114
  include Ferret::Analysis
@@ -185,7 +185,7 @@ class WhiteSpaceTokenizerTest < Test::Unit::TestCase
185
185
  assert_equal(Token.new('áägç®êëì¯úøã¬öîí', 55, 86), t.next)
186
186
  assert(! t.next())
187
187
  end
188
- end
188
+ end if Ferret.locale.downcase.index("utf")
189
189
 
190
190
  class AsciiStandardTokenizerTest < Test::Unit::TestCase
191
191
  include Ferret::Analysis
@@ -267,7 +267,7 @@ class StandardTokenizerTest < Test::Unit::TestCase
267
267
  assert_equal(Token.new('öîí', 142, 148), t.next)
268
268
  assert(! t.next())
269
269
  end
270
- end
270
+ end if Ferret.locale.downcase.index("utf")
271
271
 
272
272
  class RegExpTokenizerTest < Test::Unit::TestCase
273
273
  include Ferret::Analysis
@@ -397,20 +397,22 @@ class StemFilterTest < Test::Unit::TestCase
397
397
  assert_equal(Token.new("DEBate", 23, 31), t.next)
398
398
  assert_equal(Token.new("Debat", 32, 39), t.next)
399
399
 
400
- input = "Dêbate dêbates DÊBATED DÊBATing dêbater";
401
- t = StemFilter.new(LowerCaseFilter.new(LetterTokenizer.new(input)), :english)
402
- assert_equal(Token.new("dêbate", 0, 7), t.next)
403
- assert_equal(Token.new("dêbate", 8, 16), t.next)
404
- assert_equal(Token.new("dêbate", 17, 25), t.next)
405
- assert_equal(Token.new("dêbate", 26, 35), t.next)
406
- assert_equal(Token.new("dêbater", 36, 44), t.next)
407
- t = StemFilter.new(LetterTokenizer.new(input), :english)
408
- assert_equal(Token.new("Dêbate", 0, 7), t.next)
409
- assert_equal(Token.new("dêbate", 8, 16), t.next)
410
- assert_equal(Token.new("DÊBATED", 17, 25), t.next)
411
- assert_equal(Token.new("DÊBATing", 26, 35), t.next)
412
- assert_equal(Token.new("dêbater", 36, 44), t.next)
413
- assert(! t.next())
400
+ if Ferret.locale.downcase.index("utf")
401
+ input = "Dêbate dêbates DÊBATED DÊBATing dêbater";
402
+ t = StemFilter.new(LowerCaseFilter.new(LetterTokenizer.new(input)), :english)
403
+ assert_equal(Token.new("dêbate", 0, 7), t.next)
404
+ assert_equal(Token.new("dêbate", 8, 16), t.next)
405
+ assert_equal(Token.new("dêbate", 17, 25), t.next)
406
+ assert_equal(Token.new("dêbate", 26, 35), t.next)
407
+ assert_equal(Token.new("dêbater", 36, 44), t.next)
408
+ t = StemFilter.new(LetterTokenizer.new(input), :english)
409
+ assert_equal(Token.new("Dêbate", 0, 7), t.next)
410
+ assert_equal(Token.new("dêbate", 8, 16), t.next)
411
+ assert_equal(Token.new("DÊBATED", 17, 25), t.next)
412
+ assert_equal(Token.new("DÊBATing", 26, 35), t.next)
413
+ assert_equal(Token.new("dêbater", 36, 44), t.next)
414
+ assert(! t.next())
415
+ end
414
416
  end
415
417
  end
416
418
 
@@ -129,7 +129,7 @@ class IndexTest < Test::Unit::TestCase
129
129
  end
130
130
 
131
131
  def test_ram_index
132
- index = Index.new(:default_input_field => :xxx)
132
+ index = Ferret::I.new(:default_input_field => :xxx)
133
133
  do_test_index_with_array(index)
134
134
  index.close
135
135
 
@@ -555,12 +555,12 @@ class IndexTest < Test::Unit::TestCase
555
555
  Dir[File.join(fs_path, "*")].each {|path| begin File.delete(path) rescue nil end}
556
556
 
557
557
  data = %q(one two three four five six seven eight nine ten eleven twelve)
558
- index1 = Index.new(:path => fs_path, :auto_flush => true)
558
+ index1 = Index.new(:path => fs_path, :auto_flush => true, :key => :id)
559
559
  index2 = Index.new(:path => fs_path, :auto_flush => true)
560
560
  begin
561
- data.each do |doc|
562
- index1 << doc
563
- index2 << doc
561
+ data.each do |datum|
562
+ index1 << {:id => datum[0], :content => datum}
563
+ index2 << {:id => datum[0], :content => datum}
564
564
  end
565
565
  5.times do |i|
566
566
  index1.delete(i)
@@ -593,4 +593,22 @@ class IndexTest < Test::Unit::TestCase
593
593
  index.flush
594
594
  index.close
595
595
  end
596
+
597
+ def test_stopwords
598
+ field_infos = FieldInfos.new(:store => :no, :term_vector => :no)
599
+ field_infos.add_field(:id, :store => :yes, :index => :untokenized)
600
+
601
+ i = Ferret::Index::Index.new(:or_default => false, :default_search_field => '*')
602
+
603
+ # adding this additional field to the document leads to failure below
604
+ # comment out this statement and all tests pass:
605
+ i << {:id => 1, :content => "Move or shake"}
606
+
607
+ hits = i.search 'move nothere shake'
608
+ assert_equal 0, hits.total_hits
609
+ hits = i.search 'move shake'
610
+ assert_equal 1, hits.total_hits
611
+ hits = i.search 'move or shake'
612
+ assert_equal 1, hits.total_hits # fails when id field is present
613
+ end
596
614
  end
@@ -177,6 +177,7 @@ module IndexReaderCommon
177
177
 
178
178
  def do_test_get_doc()
179
179
  doc = @ir.get_document(3)
180
+ assert_equal([:year, :body, :title, :author], doc.fields)
180
181
  assert_equal(4, doc.fields.size)
181
182
  assert_equal(0, doc.size)
182
183
  assert_equal([], doc.keys)
@@ -160,6 +160,21 @@ class QueryParserTest < Test::Unit::TestCase
160
160
  end
161
161
  end
162
162
 
163
+ def test_or_default
164
+ parser = Ferret::QueryParser.new(:default_field => :*,
165
+ :fields => [:x, :y],
166
+ :or_default => false,
167
+ :analyzer => StandardAnalyzer.new)
168
+ pairs = [
169
+ ['word', 'x:word y:word'],
170
+ ['word1 word2', '+(x:word1 y:word1) +(x:word2 y:word2)']
171
+ ]
172
+
173
+ pairs.each do |query_str, expected|
174
+ assert_equal(expected, parser.parse(query_str).to_s(""))
175
+ end
176
+ end
177
+
163
178
  def test_prefix_query
164
179
  parser = Ferret::QueryParser.new(:default_field => "xxx",
165
180
  :fields => ["xxx"],
metadata CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.8.11
3
3
  specification_version: 1
4
4
  name: ferret
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.10.0
7
- date: 2006-08-22 00:00:00 +09:00
6
+ version: 0.10.1
7
+ date: 2006-08-26 00:00:00 -04:00
8
8
  summary: Ruby indexing library.
9
9
  require_paths:
10
10
  - lib
@@ -29,178 +29,177 @@ authors:
29
29
  - David Balmain
30
30
  files:
31
31
  - setup.rb
32
- - Rakefile
33
32
  - TODO
34
- - README
33
+ - Rakefile
35
34
  - MIT-LICENSE
36
35
  - TUTORIAL
37
- - ext/q_filtered_query.c
38
- - ext/priorityqueue.c
39
- - ext/hashset.c
40
- - ext/helper.c
41
- - ext/global.c
42
- - ext/bitvector.c
36
+ - README
37
+ - ext/stem_ISO_8859_1_norwegian.c
38
+ - ext/array.h
39
+ - ext/bitvector.h
40
+ - ext/document.c
41
+ - ext/stem_UTF_8_spanish.h
42
+ - ext/stem_ISO_8859_1_danish.c
43
+ - ext/stem_UTF_8_portuguese.h
44
+ - ext/similarity.h
45
+ - ext/r_search.c
46
+ - ext/hashset.h
47
+ - ext/extconf.rb
48
+ - ext/analysis.h
49
+ - ext/index.h
50
+ - ext/stem_UTF_8_russian.h
51
+ - ext/q_match_all.c
52
+ - ext/libstemmer.h
53
+ - ext/stem_UTF_8_finnish.h
54
+ - ext/stem_ISO_8859_1_german.c
43
55
  - ext/hash.c
44
- - ext/fs_store.c
45
- - ext/posh.c
46
- - ext/except.c
47
- - ext/ram_store.c
56
+ - ext/stem_ISO_8859_1_english.h
57
+ - ext/stem_ISO_8859_1_german.h
48
58
  - ext/store.c
49
- - ext/analysis.c
50
- - ext/document.c
51
- - ext/search.c
59
+ - ext/stem_UTF_8_swedish.h
60
+ - ext/q_term.c
52
61
  - ext/similarity.c
53
- - ext/stopwords.c
54
- - ext/array.c
55
- - ext/index.c
56
- - ext/mem_pool.c
62
+ - ext/r_analysis.c
63
+ - ext/stem_UTF_8_portuguese.c
64
+ - ext/stem_ISO_8859_1_norwegian.h
65
+ - ext/helper.c
66
+ - ext/stem_UTF_8_french.h
67
+ - ext/q_span.c
68
+ - ext/utilities.c
69
+ - ext/stem_ISO_8859_1_porter.h
70
+ - ext/ind.c
71
+ - ext/global.h
72
+ - ext/except.h
73
+ - ext/search.c
74
+ - ext/stem_ISO_8859_1_danish.h
75
+ - ext/stem_KOI8_R_russian.c
76
+ - ext/stem_UTF_8_finnish.c
77
+ - ext/stem_ISO_8859_1_french.c
57
78
  - ext/compound_io.c
58
- - ext/q_prefix.c
59
- - ext/q_range.c
60
- - ext/q_phrase.c
61
- - ext/q_term.c
79
+ - ext/ferret.h
80
+ - ext/stem_UTF_8_german.h
81
+ - ext/stem_UTF_8_dutch.c
82
+ - ext/hashset.c
83
+ - ext/defines.h
84
+ - ext/stem_ISO_8859_1_dutch.h
85
+ - ext/stem_ISO_8859_1_swedish.h
62
86
  - ext/sort.c
63
- - ext/q_boolean.c
64
- - ext/filter.c
87
+ - ext/document.h
88
+ - ext/lang.h
89
+ - ext/stem_UTF_8_porter.c
65
90
  - ext/q_const_score.c
66
- - ext/q_match_all.c
67
- - ext/q_wildcard.c
91
+ - ext/stem_UTF_8_dutch.h
92
+ - ext/q_prefix.c
68
93
  - ext/q_fuzzy.c
69
- - ext/q_multi_term.c
70
- - ext/q_parser.c
71
- - ext/q_span.c
72
- - ext/ind.c
73
- - ext/term_vectors.c
74
- - ext/priorityqueue.h
75
- - ext/defines.h
76
94
  - ext/posh.h
77
- - ext/store.h
78
- - ext/hashset.h
79
- - ext/helper.h
80
- - ext/global.h
81
- - ext/bitvector.h
82
- - ext/document.h
95
+ - ext/stem_UTF_8_italian.h
96
+ - ext/stem_ISO_8859_1_swedish.c
83
97
  - ext/hash.h
84
- - ext/except.h
85
- - ext/threading.h
86
- - ext/similarity.h
87
- - ext/index.h
88
- - ext/win32.h
89
- - ext/analysis.h
90
98
  - ext/search.h
91
- - ext/mem_pool.h
92
- - ext/array.h
93
- - ext/ind.h
94
- - ext/lang.h
95
- - ext/stem_UTF_8_norwegian.c
96
99
  - ext/stem_UTF_8_danish.c
97
- - ext/stem_UTF_8_dutch.c
98
- - ext/stem_UTF_8_english.c
99
- - ext/stem_UTF_8_finnish.c
100
- - ext/stem_UTF_8_french.c
101
- - ext/stem_UTF_8_german.c
102
- - ext/stem_UTF_8_italian.c
103
- - ext/stem_UTF_8_portuguese.c
104
- - ext/stem_UTF_8_porter.c
105
- - ext/stem_KOI8_R_russian.c
106
- - ext/stem_UTF_8_russian.c
107
- - ext/stem_UTF_8_spanish.c
100
+ - ext/stem_ISO_8859_1_portuguese.h
101
+ - ext/except.c
102
+ - ext/ind.h
103
+ - ext/modules.h
104
+ - ext/win32.h
105
+ - ext/stem_KOI8_R_russian.h
106
+ - ext/q_range.c
108
107
  - ext/stem_UTF_8_swedish.c
108
+ - ext/q_boolean.c
109
+ - ext/api.h
110
+ - ext/ram_store.c
111
+ - ext/stem_UTF_8_porter.h
112
+ - ext/inc
113
+ - ext/stem_ISO_8859_1_spanish.h
114
+ - ext/stem_UTF_8_danish.h
115
+ - ext/index.c
109
116
  - ext/stem_ISO_8859_1_english.c
110
- - ext/stem_ISO_8859_1_danish.c
117
+ - ext/q_phrase.c
118
+ - ext/stopwords.c
119
+ - ext/r_qparser.c
120
+ - ext/store.h
121
+ - ext/analysis.c
111
122
  - ext/stem_ISO_8859_1_dutch.c
112
- - ext/stem_ISO_8859_1_finnish.c
113
- - ext/stem_ISO_8859_1_french.c
114
- - ext/stem_ISO_8859_1_german.c
115
- - ext/stem_ISO_8859_1_italian.c
116
- - ext/stem_ISO_8859_1_norwegian.c
117
- - ext/stem_ISO_8859_1_porter.c
123
+ - ext/stem_ISO_8859_1_finnish.h
124
+ - ext/threading.h
118
125
  - ext/stem_ISO_8859_1_portuguese.c
119
- - ext/stem_ISO_8859_1_spanish.c
120
- - ext/stem_ISO_8859_1_swedish.c
121
- - ext/stem_UTF_8_danish.h
122
- - ext/stem_UTF_8_dutch.h
123
- - ext/stem_UTF_8_english.h
124
- - ext/stem_UTF_8_finnish.h
125
- - ext/stem_UTF_8_french.h
126
- - ext/stem_UTF_8_german.h
127
- - ext/stem_UTF_8_italian.h
126
+ - ext/stem_UTF_8_russian.c
128
127
  - ext/stem_UTF_8_norwegian.h
129
- - ext/stem_UTF_8_porter.h
130
- - ext/stem_UTF_8_portuguese.h
131
- - ext/stem_UTF_8_russian.h
132
- - ext/stem_UTF_8_spanish.h
133
- - ext/stem_UTF_8_swedish.h
134
- - ext/stem_KOI8_R_russian.h
135
- - ext/stem_ISO_8859_1_danish.h
136
- - ext/stem_ISO_8859_1_dutch.h
137
- - ext/stem_ISO_8859_1_english.h
138
- - ext/stem_ISO_8859_1_finnish.h
139
- - ext/stem_ISO_8859_1_french.h
140
- - ext/stem_ISO_8859_1_german.h
141
- - ext/stem_ISO_8859_1_italian.h
142
- - ext/stem_ISO_8859_1_norwegian.h
143
- - ext/stem_ISO_8859_1_porter.h
144
- - ext/stem_ISO_8859_1_portuguese.h
145
- - ext/stem_ISO_8859_1_spanish.h
146
- - ext/stem_ISO_8859_1_swedish.h
147
- - ext/utilities.c
148
128
  - ext/api.c
149
- - ext/api.h
150
- - ext/header.h
151
- - ext/libstemmer.c
152
- - ext/modules.h
153
- - ext/libstemmer.h
154
- - ext/extconf.rb
155
- - ext/inc
156
- - ext/ferret.h
129
+ - ext/array.c
130
+ - ext/stem_ISO_8859_1_italian.c
131
+ - ext/stem_ISO_8859_1_spanish.c
132
+ - ext/r_store.c
133
+ - ext/stem_UTF_8_german.c
157
134
  - ext/ferret.c
158
- - ext/tags
159
- - ext/r_analysis.c
135
+ - ext/helper.h
136
+ - ext/q_multi_term.c
137
+ - ext/stem_UTF_8_english.c
138
+ - ext/stem_ISO_8859_1_french.h
139
+ - ext/q_parser.c
140
+ - ext/stem_ISO_8859_1_italian.h
141
+ - ext/stem_ISO_8859_1_porter.c
142
+ - ext/priorityqueue.c
143
+ - ext/stem_UTF_8_italian.c
144
+ - ext/global.c
145
+ - ext/filter.c
146
+ - ext/stem_UTF_8_spanish.c
147
+ - ext/stem_UTF_8_norwegian.c
160
148
  - ext/r_utils.c
161
- - ext/r_store.c
149
+ - ext/stem_UTF_8_english.h
150
+ - ext/stem_ISO_8859_1_finnish.c
151
+ - ext/stem_UTF_8_french.c
152
+ - ext/mem_pool.h
153
+ - ext/posh.c
154
+ - ext/fs_store.c
155
+ - ext/mem_pool.c
156
+ - ext/priorityqueue.h
157
+ - ext/header.h
158
+ - ext/bitvector.c
162
159
  - ext/r_index.c
163
- - ext/r_search.c
164
- - ext/r_qparser.c
165
- - ext/inc/threading.h
160
+ - ext/libstemmer.c
161
+ - ext/term_vectors.c
162
+ - ext/q_filtered_query.c
163
+ - ext/q_wildcard.c
166
164
  - ext/inc/lang.h
167
- - lib/ferret.rb
165
+ - ext/inc/threading.h
168
166
  - lib/ferret_version.rb
167
+ - lib/ferret.rb
169
168
  - lib/ferret/number_tools.rb
170
169
  - lib/ferret/index.rb
171
170
  - lib/ferret/document.rb
172
- - test/test_all.rb
173
171
  - test/test_helper.rb
174
- - test/unit/ts_analysis.rb
172
+ - test/test_all.rb
175
173
  - test/unit/ts_store.rb
176
- - test/unit/ts_utils.rb
174
+ - test/unit/ts_analysis.rb
175
+ - test/unit/ts_query_parser.rb
177
176
  - test/unit/tc_document.rb
178
- - test/unit/ts_index.rb
179
177
  - test/unit/ts_search.rb
180
- - test/unit/ts_query_parser.rb
181
- - test/unit/utils/tc_bit_vector.rb
182
- - test/unit/utils/tc_priority_queue.rb
183
- - test/unit/utils/tc_number_tools.rb
184
- - test/unit/analysis/tc_analyzer.rb
185
- - test/unit/analysis/tc_token_stream.rb
186
- - test/unit/store/tm_store_lock.rb
178
+ - test/unit/ts_utils.rb
179
+ - test/unit/ts_index.rb
180
+ - test/unit/store/tm_store.rb
187
181
  - test/unit/store/tc_fs_store.rb
182
+ - test/unit/store/tm_store_lock.rb
188
183
  - test/unit/store/tc_ram_store.rb
189
- - test/unit/store/tm_store.rb
190
- - test/unit/index/tc_index_reader.rb
191
- - test/unit/index/tc_index_writer.rb
192
- - test/unit/index/tc_index.rb
193
- - test/unit/index/th_doc.rb
194
184
  - test/unit/search/tc_index_searcher.rb
195
- - test/unit/search/tc_multi_searcher.rb
196
185
  - test/unit/search/tc_fuzzy_query.rb
197
- - test/unit/search/tc_sort.rb
198
- - test/unit/search/tc_filter.rb
199
- - test/unit/search/tc_spans.rb
200
- - test/unit/search/tc_sort_field.rb
186
+ - test/unit/search/tc_multi_searcher.rb
201
187
  - test/unit/search/tc_search_and_sort.rb
202
188
  - test/unit/search/tm_searcher.rb
189
+ - test/unit/search/tc_spans.rb
190
+ - test/unit/search/tc_filter.rb
191
+ - test/unit/search/tc_sort.rb
192
+ - test/unit/search/tc_sort_field.rb
193
+ - test/unit/index/tc_index.rb
194
+ - test/unit/index/th_doc.rb
195
+ - test/unit/index/tc_index_writer.rb
196
+ - test/unit/index/tc_index_reader.rb
197
+ - test/unit/analysis/tc_token_stream.rb
198
+ - test/unit/analysis/tc_analyzer.rb
203
199
  - test/unit/query_parser/tc_query_parser.rb
200
+ - test/unit/utils/tc_priority_queue.rb
201
+ - test/unit/utils/tc_bit_vector.rb
202
+ - test/unit/utils/tc_number_tools.rb
204
203
  test_files: []
205
204
 
206
205
  rdoc_options:
@@ -216,12 +215,12 @@ extra_rdoc_files:
216
215
  - TODO
217
216
  - TUTORIAL
218
217
  - MIT-LICENSE
218
+ - ext/r_search.c
219
219
  - ext/r_analysis.c
220
- - ext/r_utils.c
220
+ - ext/r_qparser.c
221
221
  - ext/r_store.c
222
+ - ext/r_utils.c
222
223
  - ext/r_index.c
223
- - ext/r_search.c
224
- - ext/r_qparser.c
225
224
  - ext/ferret.c
226
225
  executables: []
227
226