/** Return the value in the binding or the variable itself. */ public static Node lookup(Binding binding, Var var) { Node n = binding.get(var); if ( n != null ) return n; return var; }
public static void main(String... args) { InputStream in = System.in ; OutputStream out = System.out ; BindingInputStream input = new BindingInputStream(in) ; BindingOutputStream output = new BindingOutputStream(out) ; for ( ; input.hasNext() ; ) output.send(input.next()) ; output.flush() ; } }
/** Convert a query solution to a binding */ public static Binding asBinding(QuerySolution qSolution) { if ( qSolution == null ) return null; if ( qSolution instanceof ResultBinding ) // Only named variables. return new BindingProjectNamed(((ResultBinding)qSolution).getBinding()); BindingMap binding = BindingFactory.create(); addToBinding(binding, qSolution); return binding; }
@Override public Iterator<Binding> createDeserializer(InputStream in) { return new BindingInputStream(in); }
@Override public boolean equals(Object obj) { if ( this == obj ) return true ; if ( ! ( obj instanceof BindingFixed) ) return false ; BindingFixed b = (BindingFixed)obj ; return BindingBase.equals(this, b) ; }
@Override public int hashCode() { if ( ! haveDoneHashCode ) { calcHashCode = calcHashCode() ; haveDoneHashCode = true ; } return calcHashCode ; }
@Override public Binding convert(Binding binding) { return new BindingProjectNamed(binding) ; } }
@Override public Binding convert(Binding bind) { return new BindingProject(projectionVars, bind) ; } }
@Override public Node get(Var var) { return binding.get(var) ; }
public static void main(String... args) { InputStream in = System.in ; OutputStream out = System.out ; BindingInputStream input = new BindingInputStream(in) ; BindingOutputStream output = new BindingOutputStream(out) ; for ( ; input.hasNext() ; ) output.send(input.next()) ; output.flush() ; } }
@Override public boolean equals(Object other) { if ( this == other ) return true; if ( !(other instanceof Binding) ) return false; Binding binding = (Binding)other; return equals(this, binding); }