1
0
mirror of https://github.com/DanilaFe/abacus synced 2024-06-16 07:57:06 -07:00
Abacus/src/org/nwapw/abacus/lexing/pattern/PatternNode.java

32 lines
620 B
Java
Raw Normal View History

package org.nwapw.abacus.lexing.pattern;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
public class PatternNode<T> {
protected HashSet<PatternNode<T>> outputStates;
public PatternNode(){
outputStates = new HashSet<>();
}
public boolean matches(char other){
return false;
}
public char range(){
return '\0';
}
public void addInto(Collection<PatternNode<T>> into){
into.add(this);
}
public void addOutputsInto(Collection<PatternNode<T>> into){
outputStates.forEach(e -> e.addInto(into));
}
}