@Override protected Iterator<Quad> findInAnyNamedGraphs(Node s, Node p, Node o) { // There are no named graphs return Iter.nullIterator(); }
@Override protected Iterator<Quad> findInSpecificNamedGraph(Node g, Node s, Node p, Node o) { // There are no named graphs return Iter.nullIterator(); }
@Override public Iterator<K> keys() { return Iter.nullIterator() ; }
@Override public Iterator<Binding> rows() { return Iter.nullIterator() ; }
@Override protected Iterator<Quad> findInDftGraph(Node s, Node p, Node o) { return Iter.nullIterator(); }
/** Iterate over all the names of variables. */ @Override public Iterator<Var> vars1() { return Iter.nullIterator() ; }
@Override public Iterator<Quad> find(Node g, Node s, Node p, Node o) { return Iter.nullIterator(); }
@Override public Iterator<Node> listGraphNodes() { return Iter.nullIterator(); }
@Override protected Iterator<Quad> findInSpecificNamedGraph(Node g, Node s, Node p, Node o) { return Iter.nullIterator(); }
@Override protected Iterator<Quad> findInAnyNamedGraphs(Node s, Node p, Node o) { return Iter.nullIterator(); }
/** Iterate over all the names of variables. */ @Override public Iterator<Var> vars1() { return Iter.nullIterator() ; }
@Override public Iterator<Binding> rows() { return Iter.nullIterator() ; }
/** Find matching quads */ public Iterator<Quad> find(Node g, Node s, Node p, Node o) { Iterator<Tuple<NodeId>> iter = table.findAsNodeIds(g, s, p, o) ; if ( iter == null ) return Iter.nullIterator() ; Iterator<Quad> iter2 = TupleLib.convertToQuads(table.getNodeTable(), iter) ; return iter2 ; }
/** Find matching triples */ public Iterator<Triple> find(Node s, Node p, Node o) { Iterator<Tuple<NodeId>> iter = table.findAsNodeIds(s, p, o) ; if ( iter == null ) return Iter.nullIterator() ; Iterator<Triple> iter2 = TupleLib.convertToTriples(table.getNodeTable(), iter) ; return iter2 ; }
protected Iterator<Quad> findAny(Node s, Node p , Node o) { // Default graph Iterator<Quad> iter1 = findInDftGraph(s, p, o) ; Iterator<Quad> iter2 = findInAnyNamedGraphs(s, p, o) ; if ( iter1 == null && iter2 == null ) return Iter.nullIterator() ; // Copes with null in either position. return Iter.append(iter1, iter2) ; }
protected static Iterator<Node> makeSources(DatasetGraph data, Binding b, Node graphVar) { Node n2 = resolve(b, graphVar) ; if ( n2 != null && n2.isLiteral() ) // Literal possible after resolving return Iter.nullIterator() ; // n2 is a URI or null. if ( n2 == null ) // Do all submodels. return data.listGraphNodes() ; return new SingletonIterator<>(n2) ; }
@Test public void flatmap_03() { List<Integer> data = Arrays.asList(1,2,3); Function<Integer, Iterator<String>> mapper = x -> { switch(x) { case 1: return Iter.nullIterator(); case 2: return Arrays.asList("two").iterator(); case 3: return Iter.nullIterator(); default: throw new IllegalArgumentException(); } }; Iter<String> it = Iter.iter(data.iterator()).flatMap(mapper); test(it, "two"); }
@Test public void flatmap_02() { List<Integer> data = Arrays.asList(1,2,3); Iterator<Integer> it = Iter.flatMap(data.iterator(), x -> { if ( x == 2 ) return Iter.nullIterator(); return Arrays.asList(x*x).iterator(); }); test(it, 1, 9); }
/** Find by node. */ @Override public Iterator<Tuple<Node>> find(Node... nodes) { try { startRead() ; Iterator<Tuple<NodeId>> iter1 = findAsNodeIds(nodes) ; // **public call if (iter1 == null) return Iter.nullIterator() ; Iterator<Tuple<Node>> iter2 = TupleLib.convertToNodes(nodeTable, iter1) ; return iteratorControl(iter2) ; } finally { finishRead() ; } }
@Test public void iter_truncate_00() { Iterator<String> iter = new IteratorTruncate<>(Iter.nullIterator(), (item)->true) ; long n = Iter.count(iter) ; assertEquals(0, n) ; }