@Override public int hashCode() { return hashZeroOrOne ^ getSubPath().hashCode() ; }
public static Path pathZeroOrOne(Path path) { return new P_ZeroOrOne(path) ; } public static Path pathOneOrMore(Path path) { return new P_OneOrMore(path) ; }
@Override public int hashCode() { return hashZeroOrOne ^ getSubPath().hashCode() ; }
public static Path pathZeroOrOne(Path path) { return new P_ZeroOrOne(path) ; }
@Override public boolean equalTo(Path path2, NodeIsomorphismMap isoMap) { if ( ! ( path2 instanceof P_ZeroOrOne ) ) return false ; P_ZeroOrOne other = (P_ZeroOrOne)path2 ; return getSubPath().equalTo(other.getSubPath(), isoMap) ; }
public Path make(ItemList list) { BuilderLib.checkLength(2, 2, list, "path ZeroOrOne: wanted 1 argument") ; Path path = build(list, 1) ; return new P_ZeroOrOne(path) ; } } ;
@Override public boolean equalTo(Path path2, NodeIsomorphismMap isoMap) { if ( ! ( path2 instanceof P_ZeroOrOne ) ) return false ; P_ZeroOrOne other = (P_ZeroOrOne)path2 ; return getSubPath().equalTo(other.getSubPath(), isoMap) ; }
@Override public Path make(ItemList list) { BuilderLib.checkLength(2, 2, list, "path ZeroOrOne: wanted 1 argument") ; Path path = build(list, 1) ; return new P_ZeroOrOne(path) ; } } ;
public void visit(P_ZeroOrOne path) { doZero(path.getSubPath()) ; doOne(path.getSubPath()) ; }
public void visit(P_ZeroOrOne path) { writeStarPlusQuery(Tags.tagPathZeroOrOne, path.getSubPath()) ; }
@Override public void visit(P_ZeroOrOne path) { engine.doZeroOrOne(path.getSubPath(), node, output) ; }
public void visit(P_ZeroOrOne path) { doZero(path.getSubPath()) ; doOne(path.getSubPath()) ; }
@Override public void visit(P_ZeroOrOne path) { writePath(Tags.tagPathZeroOrOne, path.getSubPath()) ; }
@Override public void visit(P_ZeroOrOne path) { printPathMod("?", path.getSubPath()) ; }
public void visit(P_ZeroOrOne path) { printPathMod("?", path.getSubPath()) ; }
@Override public void visit(P_ZeroOrOne p) { p.getSubPath().visit(this); List<Rule> rules = result; Predicate subpred = resultMainPredicate; Predicate newpred = new Predicate(idpPredicateGen.createNewVariable(), 2); VariableExpr x = new VariableExpr("X"); VariableExpr y = new VariableExpr("Y"); rules.add(new Rule(new AtomicFormula(newpred, x, y), ruleid++, new AtomicFormula(new Predicate(Rule.BUILT_IN_EQUAL, 2), x, y))); rules.add(new Rule(new AtomicFormula(newpred, x, y), ruleid++, new AtomicFormula(subpred, x, y))); result = rules; resultMainPredicate = newpred; }