org.apache.lucene.util.automaton
Class DaciukMihovAutomatonBuilder

java.lang.Object
  extended by org.apache.lucene.util.automaton.DaciukMihovAutomatonBuilder

public final class DaciukMihovAutomatonBuilder
extends Object

Builds a minimal deterministic automaton that accepts a set of strings. The algorithm requires sorted input data, but is very fast (nearly linear with the input size).


Nested Class Summary
static class DaciukMihovAutomatonBuilder.State
          DFSA state with char labels on transitions.
 
Constructor Summary
DaciukMihovAutomatonBuilder()
           
 
Method Summary
 void add(CharsRef current)
          Add another character sequence to this automaton.
static Automaton build(Collection<BytesRef> input)
          Build a minimal, deterministic automaton from a sorted list of strings.
 DaciukMihovAutomatonBuilder.State complete()
          Finalize the automaton and return the root state.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DaciukMihovAutomatonBuilder

public DaciukMihovAutomatonBuilder()
Method Detail

add

public void add(CharsRef current)
Add another character sequence to this automaton. The sequence must be lexicographically larger or equal compared to any previous sequences added to this automaton (the input must be sorted).


complete

public DaciukMihovAutomatonBuilder.State complete()
Finalize the automaton and return the root state. No more strings can be added to the builder after this call.

Returns:
Root automaton state.

build

public static Automaton build(Collection<BytesRef> input)
Build a minimal, deterministic automaton from a sorted list of strings.



Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.