@Override public void visit(ElementAssign assign) { com.hp.hpl.jena.sparql.expr.Expr expr = assign.getExpr().copySubstitute(this); Var v = assign.getVar(); result = new ElementAssign(v, expr); }
@Override public boolean equalTo(Element el2, NodeIsomorphismMap isoMap) { if ( ! ( el2 instanceof ElementAssign ) ) return false ; ElementAssign f2 = (ElementAssign)el2 ; if ( ! this.getVar().equals(f2.getVar() )) return false ; if ( ! this.getExpr().equals(f2.getExpr()) ) return false ; return true ; }
final public Element Assignment() throws ParseException { Var v ; Expr expr ; jj_consume_token(LET); jj_consume_token(LPAREN); v = Var(); jj_consume_token(ASSIGN); expr = Expression(); jj_consume_token(RPAREN); {if (true) return new ElementAssign(v, expr) ;} throw new Error("Missing return statement in function"); }
@Override public void visit(ElementAssign el) { acc.add(el.getVar()) ; }
@Override public boolean equalTo(Element el2, NodeIsomorphismMap isoMap) { if ( ! ( el2 instanceof ElementAssign ) ) return false ; ElementAssign f2 = (ElementAssign)el2 ; if ( ! this.getVar().equals(f2.getVar() )) return false ; if ( ! this.getExpr().equals(f2.getExpr()) ) return false ; return true ; }
final public Element Assignment() throws ParseException { Var v ; Expr expr ; jj_consume_token(LET); jj_consume_token(LPAREN); v = Var(); jj_consume_token(ASSIGN); expr = Expression(); jj_consume_token(RPAREN); {if (true) return new ElementAssign(v, expr) ;} throw new Error("Missing return statement in function"); }
@Override public void visit(ElementAssign el) { acc.add(el.getVar()) ; }
Element elt = new ElementAssign(v, e) ; ElementGroup g = currentGroup() ; g.addElement(elt) ;
public void visit(OpExtend opExtend) { /** * Special case: group involves and internal assignment * e.g. (assign ((?.1 ?.0)) (group () ((?.0 (count))) * We attempt to intercept that here. */ if (opExtend.getSubOp() instanceof OpGroup) { Map<Var, Var> subs = new HashMap<Var, Var>(); Expr exp; for (Var v: opExtend.getVarExprList().getVars()) { exp = opExtend.getVarExprList().getExpr(v); if (exp.isVariable()) subs.put(exp.asVar(), v); else throw new ARQNotImplemented("Expected simple assignment for group"); } visit((OpGroup) opExtend.getSubOp(), subs); return; } opExtend.getSubOp().visit(this) ; for ( Var v : opExtend.getVarExprList().getVars() ) { Element elt = new ElementAssign(v, opExtend.getVarExprList().getExpr(v)) ; ElementGroup g = currentGroup() ; g.addElement(elt) ; } }
public void visit(OpAssign opAssign) { /** * Special case: group involves and internal assignment * e.g. (assign ((?.1 ?.0)) (group () ((?.0 (count))) * We attempt to intercept that here. */ if (opAssign.getSubOp() instanceof OpGroup) { Map<Var, Var> subs = new HashMap<Var, Var>(); Expr exp; for (Var v: opAssign.getVarExprList().getVars()) { exp = opAssign.getVarExprList().getExpr(v); if (exp.isVariable()) subs.put(exp.asVar(), v); else throw new ARQNotImplemented("Expected simple assignment for group"); } visit((OpGroup) opAssign.getSubOp(), subs); return; } opAssign.getSubOp().visit(this) ; for ( Var v : opAssign.getVarExprList().getVars() ) { Element elt = new ElementAssign(v, opAssign.getVarExprList().getExpr(v)) ; ElementGroup g = currentGroup() ; g.addElement(elt) ; } }