tecgraf.javautils.parsers
Class FiniteAutomaton

java.lang.Object
  extended by tecgraf.javautils.parsers.FiniteAutomaton

public class FiniteAutomaton
extends Object

Representa um autômato finito (máquina de estados finitos).


Constructor Summary
protected FiniteAutomaton(State initialState)
          Constrói um autômato finito.
 
Method Summary
 State getInitialState()
          Obtém o estado inicial do autômato.
 List<Token> start(SymbolIterator symbolIterator)
          Inicia a execução do autômato para os símbolos recebidos.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FiniteAutomaton

protected FiniteAutomaton(State initialState)
Constrói um autômato finito.

Parameters:
initialState - O estado inicial do autômato.
Method Detail

getInitialState

public final State getInitialState()
Obtém o estado inicial do autômato.

Returns:
O estado inicial.

start

public final List<Token> start(SymbolIterator symbolIterator)
                        throws InvalidStateException,
                               AutomatonException
Inicia a execução do autômato para os símbolos recebidos.

Parameters:
symbolIterator - Um iterador com os símbolos que representam a entrada do autômato.
Returns:
Uma lista com os tokens gerados pelo autômato.
Throws:
InvalidStateException - Caso não existam mais símbolos e o autômato está num estado não-final.
AutomatonException - Caso ocorra algum erro durante a execução do autômato.
IllegalArgumentException - Caso seja passado um iterador nulo.


Copyright © 2014 Tecgraf/PUC-Rio. All rights reserved.