当前位置: 首页>>代码示例>>Java>>正文


Java SingleTermsEnum类代码示例

本文整理汇总了Java中org.apache.lucene.index.SingleTermsEnum的典型用法代码示例。如果您正苦于以下问题:Java SingleTermsEnum类的具体用法?Java SingleTermsEnum怎么用?Java SingleTermsEnum使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


SingleTermsEnum类属于org.apache.lucene.index包,在下文中一共展示了SingleTermsEnum类的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getTermsEnum

import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
/** Return a {@link TermsEnum} intersecting the provided {@link Terms}
 *  with the terms accepted by this automaton. */
public TermsEnum getTermsEnum(Terms terms) throws IOException {
  switch(type) {
  case NONE:
    return TermsEnum.EMPTY;
  case ALL:
    return terms.iterator(null);
  case SINGLE:
    return new SingleTermsEnum(terms.iterator(null), term);
  case PREFIX:
    // TODO: this is very likely faster than .intersect,
    // but we should test and maybe cutover
    return new PrefixTermsEnum(terms.iterator(null), term);
  case NORMAL:
    return terms.intersect(this, null);
  default:
    // unreachable
    throw new RuntimeException("unhandled case");
  }
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:22,代码来源:CompiledAutomaton.java

示例2: getTermsEnum

import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
public TermsEnum getTermsEnum(Terms terms) throws IOException {
  switch(type) {
  case NONE:
    return TermsEnum.EMPTY;
  case ALL:
    return terms.iterator(null);
  case SINGLE:
    return new SingleTermsEnum(terms.iterator(null), term);
  case PREFIX:
    // TODO: this is very likely faster than .intersect,
    // but we should test and maybe cutover
    return new PrefixTermsEnum(terms.iterator(null), term);
  case NORMAL:
    return terms.intersect(this, null);
  default:
    // unreachable
    throw new RuntimeException("unhandled case");
  }
}
 
开发者ID:pkarmstr,项目名称:NYBC,代码行数:20,代码来源:CompiledAutomaton.java

示例3: getTermsEnum

import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
@Override
protected TermsEnum getTermsEnum(Terms terms, AttributeSource atts) throws IOException {
  if (maxEdits == 0 || prefixLength >= term.text().length()) {  // can only match if it's exact
    return new SingleTermsEnum(terms.iterator(null), term.bytes());
  }
  return new FuzzyTermsEnum(terms, atts, getTerm(), maxEdits, prefixLength, transpositions);
}
 
开发者ID:lamsfoundation,项目名称:lams,代码行数:8,代码来源:FuzzyQuery.java

示例4: getTermsEnum

import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
@Override
protected TermsEnum getTermsEnum(final Terms terms,
		final AttributeSource atts) throws IOException {
	if ((maxEdits == 0) || (prefixLength >= term.text().length())) { // can
																		// only
		// match
		// if
		// it's
		// exact
		return new SingleTermsEnum(terms.iterator(null), term.bytes());
	}
	return new FuzzyTermsEnum(terms, atts, getTerm(), maxEdits,
			prefixLength, transpositions);
}
 
开发者ID:quhfus,项目名称:DoSeR-Disambiguation,代码行数:15,代码来源:LearnToRankFuzzyQuery.java

示例5: getTermsEnum

import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
@Override
protected TermsEnum getTermsEnum(Terms terms, AttributeSource atts) throws IOException {
  if (!termLongEnough) {  // can only match if it's exact
    return new SingleTermsEnum(terms.iterator(null), term.bytes());
  }
  return new SlowFuzzyTermsEnum(terms, atts, getTerm(), minimumSimilarity, prefixLength);
}
 
开发者ID:europeana,项目名称:search,代码行数:8,代码来源:SlowFuzzyQuery.java

示例6: testRewriteSingleTerm

import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
/**
 * Test that rewriting to a single term works as expected, preserves
 * MultiTermQuery semantics.
 */
public void testRewriteSingleTerm() throws IOException {
  AutomatonQuery aq = new AutomatonQuery(newTerm("bogus"), Automata.makeString("piece"));
  Terms terms = MultiFields.getTerms(searcher.getIndexReader(), FN);
  assertTrue(aq.getTermsEnum(terms) instanceof SingleTermsEnum);
  assertEquals(1, automatonQueryNrHits(aq));
}
 
开发者ID:europeana,项目名称:search,代码行数:11,代码来源:TestAutomatonQuery.java

示例7: getTermsEnum

import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
@Override
protected TermsEnum getTermsEnum(Terms terms, AttributeSource atts)
		throws IOException {
	if (maxEdits == 0 || prefixLength >= term.text().length()) { // can only
																	// match
																	// if
																	// it's
																	// exact
		return new SingleTermsEnum(terms.iterator(null), term.bytes());
	}
	return new FuzzyTermsEnum(terms, atts, getTerm(), maxEdits,
			prefixLength, transpositions);
}
 
开发者ID:quhfus,项目名称:DoSeR,代码行数:14,代码来源:LearnToRankFuzzyQuery.java

示例8: testRewriteSingleTerm

import org.apache.lucene.index.SingleTermsEnum; //导入依赖的package包/类
/**
 * Test that rewriting to a single term works as expected, preserves
 * MultiTermQuery semantics.
 */
public void testRewriteSingleTerm() throws IOException {
  AutomatonQuery aq = new AutomatonQuery(newTerm("bogus"), BasicAutomata
      .makeString("piece"));
  Terms terms = MultiFields.getTerms(searcher.getIndexReader(), FN);
  assertTrue(aq.getTermsEnum(terms) instanceof SingleTermsEnum);
  assertEquals(1, automatonQueryNrHits(aq));
}
 
开发者ID:pkarmstr,项目名称:NYBC,代码行数:12,代码来源:TestAutomatonQuery.java


注:本文中的org.apache.lucene.index.SingleTermsEnum类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。