org.apache.lucene.util.automaton

## Class DaciukMihovAutomatonBuilder

- java.lang.Object
- - 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).
  See Also:
    `build(Collection)`, `Automata.makeStringUnion(Collection)`

- - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `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 `BytesRef` representing strings in UTF-8.
    `org.apache.lucene.util.automaton.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`

- - ### 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 org.apache.lucene.util.automaton.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 `BytesRef` representing strings in UTF-8. These strings must be binary-sorted.

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