private void findLeaves(RegExp exp, Kind kind, List<Automaton> list, Map<String,Automaton> automata, AutomatonProvider automaton_provider, int maxDeterminizedStates) { if (exp.kind == kind) { findLeaves(exp.exp1, kind, list, automata, automaton_provider, maxDeterminizedStates); findLeaves(exp.exp2, kind, list, automata, automaton_provider, maxDeterminizedStates); } else { list.add(exp.toAutomatonInternal(automata, automaton_provider, maxDeterminizedStates)); } }
case REGEXP_UNION: list = new ArrayList<>(); findLeaves(exp1, Kind.REGEXP_UNION, list, automata, automaton_provider, maxDeterminizedStates); findLeaves(exp2, Kind.REGEXP_UNION, list, automata, automaton_provider, maxDeterminizedStates); a = Operations.union(list); case REGEXP_CONCATENATION: list = new ArrayList<>(); findLeaves(exp1, Kind.REGEXP_CONCATENATION, list, automata, automaton_provider, maxDeterminizedStates); findLeaves(exp2, Kind.REGEXP_CONCATENATION, list, automata, automaton_provider, maxDeterminizedStates); a = Operations.concatenate(list);
private void findLeaves(RegExp exp, Kind kind, List<Automaton> list, Map<String,Automaton> automata, AutomatonProvider automaton_provider, int maxDeterminizedStates) { if (exp.kind == kind) { findLeaves(exp.exp1, kind, list, automata, automaton_provider, maxDeterminizedStates); findLeaves(exp.exp2, kind, list, automata, automaton_provider, maxDeterminizedStates); } else { list.add(exp.toAutomatonInternal(automata, automaton_provider, maxDeterminizedStates)); } }
private void findLeaves(RegExp exp, Kind kind, List<Automaton> list, Map<String,Automaton> automata, AutomatonProvider automaton_provider, int maxDeterminizedStates) { if (exp.kind == kind) { findLeaves(exp.exp1, kind, list, automata, automaton_provider, maxDeterminizedStates); findLeaves(exp.exp2, kind, list, automata, automaton_provider, maxDeterminizedStates); } else { list.add(exp.toAutomatonInternal(automata, automaton_provider, maxDeterminizedStates)); } }
private void findLeaves(RegExp exp, Kind kind, List<Automaton> list, Map<String,Automaton> automata, AutomatonProvider automaton_provider, int maxDeterminizedStates) { if (exp.kind == kind) { findLeaves(exp.exp1, kind, list, automata, automaton_provider, maxDeterminizedStates); findLeaves(exp.exp2, kind, list, automata, automaton_provider, maxDeterminizedStates); } else { list.add(exp.toAutomatonInternal(automata, automaton_provider, maxDeterminizedStates)); } }
case REGEXP_UNION: list = new ArrayList<>(); findLeaves(exp1, Kind.REGEXP_UNION, list, automata, automaton_provider, maxDeterminizedStates); findLeaves(exp2, Kind.REGEXP_UNION, list, automata, automaton_provider, maxDeterminizedStates); a = Operations.union(list); case REGEXP_CONCATENATION: list = new ArrayList<>(); findLeaves(exp1, Kind.REGEXP_CONCATENATION, list, automata, automaton_provider, maxDeterminizedStates); findLeaves(exp2, Kind.REGEXP_CONCATENATION, list, automata, automaton_provider, maxDeterminizedStates); a = Operations.concatenate(list);
case REGEXP_UNION: list = new ArrayList<>(); findLeaves(exp1, Kind.REGEXP_UNION, list, automata, automaton_provider, maxDeterminizedStates); findLeaves(exp2, Kind.REGEXP_UNION, list, automata, automaton_provider, maxDeterminizedStates); a = Operations.union(list); case REGEXP_CONCATENATION: list = new ArrayList<>(); findLeaves(exp1, Kind.REGEXP_CONCATENATION, list, automata, automaton_provider, maxDeterminizedStates); findLeaves(exp2, Kind.REGEXP_CONCATENATION, list, automata, automaton_provider, maxDeterminizedStates); a = Operations.concatenate(list);
case REGEXP_UNION: list = new ArrayList<>(); findLeaves(exp1, Kind.REGEXP_UNION, list, automata, automaton_provider, maxDeterminizedStates); findLeaves(exp2, Kind.REGEXP_UNION, list, automata, automaton_provider, maxDeterminizedStates); a = Operations.union(list); case REGEXP_CONCATENATION: list = new ArrayList<>(); findLeaves(exp1, Kind.REGEXP_CONCATENATION, list, automata, automaton_provider, maxDeterminizedStates); findLeaves(exp2, Kind.REGEXP_CONCATENATION, list, automata, automaton_provider, maxDeterminizedStates); a = Operations.concatenate(list);