Module org.firebirdsql.jaybird
Package org.firebirdsql.jaybird.parser

# Class SqlTokenizer

java.lang.Object
org.firebirdsql.jaybird.parser.SqlTokenizer

All Implemented Interfaces:
  `AutoCloseable`, `Iterator<Token>`

@InternalApi public final class SqlTokenizer extends Object implements Iterator<Token>, AutoCloseable
Converts a SQL statement into tokens.

This class is not thread-safe.

Since:
  5

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `static final class`
  `SqlTokenizer.Builder`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `close()`
  `boolean`
  `hasNext()`
  `Token`
  `next()`
  `static SqlTokenizer.Builder`
  `withReservedWords(ReservedWords reservedWords)`
  Tokenize with a supplier of reserved words.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface java.util.Iterator

  `forEachRemaining, remove`

- ## Method Details

  - ### withReservedWords

    public static SqlTokenizer.Builder withReservedWords(ReservedWords reservedWords)
    Tokenize with a supplier of reserved words.
    Parameters:
      `reservedWords` - Reserved words
    Returns:
      builder to complete initialization of a tokenizer

  - ### hasNext

    public boolean hasNext()
    Specified by:
      `hasNext` in interface `Iterator<Token>`

  - ### next

    public Token next()
    Specified by:
      `next` in interface `Iterator<Token>`

  - ### close

    public void close()
    Specified by:
      `close` in interface `AutoCloseable`