package pl.edu.amu.wmi.daut.re; import pl.edu.amu.wmi.daut.base.AutomataOperations; import pl.edu.amu.wmi.daut.base.AutomatonSpecification; import java.util.List; /** * Klasa reprezentująca operator '|' z wyrażeń regularnych (alternatywa). */ public class AlternativeOperator extends BinaryRegexpOperator { @Override public final AutomatonSpecification createAutomatonFromTwoAutomata( AutomatonSpecification leftSubautomaton, AutomatonSpecification rightSubautomaton) { return AutomataOperations.sum(leftSubautomaton, rightSubautomaton); } /** * Fabryka operatora. */ public static class Factory extends BinaryRegexpOperatorFactory { @Override public int numberOfParams() { return 0; } protected RegexpOperator doCreateOperator(List<String> params) { return new AlternativeOperator(); } } /** * Metoda toString(). */ @Override public String toString() { return "ALTERNATIVE"; } }