package pl.edu.amu.wmi.daut.base; import java.util.List; /** * Pomocnicza klasa * do obslugi epsilonow. */ public class EpsilonUtilities { protected EpsilonUtilities() { throw new UnsupportedOperationException(); } /** * Metoda sprawdzajaca, czy dany automat * ma jakies epsilon-przejscie. */ public static boolean isEpsilonTransition(AutomatonSpecification automat) { List<State> states = automat.allStates(); if (states.isEmpty()) return false; for (State state : states) { List<OutgoingTransition> transitions = automat.allOutgoingTransitions(state); for (OutgoingTransition transition : transitions) { TransitionLabel label = transition.getTransitionLabel(); if (label.canBeEpsilon()) return true; } } return false; } }