edu.stanford.nlp.trees.EnglishGrammaticalStructureFactory Maven / Gradle / Ivy
package edu.stanford.nlp.trees;
import java.util.function.Predicate;
public class EnglishGrammaticalStructureFactory implements GrammaticalStructureFactory {
private final Predicate puncFilter;
private final HeadFinder hf;
public EnglishGrammaticalStructureFactory() {
this(null, null);
}
public EnglishGrammaticalStructureFactory(Predicate puncFilter) {
this(puncFilter, null);
}
public EnglishGrammaticalStructureFactory(Predicate puncFilter, HeadFinder hf) {
this.puncFilter = puncFilter;
this.hf = hf;
}
public EnglishGrammaticalStructure newGrammaticalStructure(Tree t) {
if (puncFilter == null && hf == null) {
return new EnglishGrammaticalStructure(t);
} else if (hf == null) {
return new EnglishGrammaticalStructure(t, puncFilter);
} else {
return new EnglishGrammaticalStructure(t, puncFilter, hf);
}
}
}