public Iterator<Unfolding> unfold(final ATermAppl concept) { final Unfolding unfolding = _definitions.get(concept); return unfolding == null ? IteratorUtils.<Unfolding> emptyIterator() : IteratorUtils.singletonIterator(unfolding); }
public Iterator<Unfolding> unfold(final ATermAppl concept) { final Unfolding unfolding = _definitions.get(concept); return unfolding == null ? IteratorUtils.<Unfolding> emptyIterator() : IteratorUtils.singletonIterator(unfolding); }
@Override public Iterator<WME> getMatches(final int argIndex, final Node arg) { if (_name != null || argIndex != 0) throw new IndexOutOfBoundsException(); if (!(arg instanceof Individual)) throw new IllegalArgumentException(); final DependencySet depends = arg.getDepends(_predicate); return (depends == null) ? IteratorUtils.<WME> emptyIterator() : IteratorUtils.<WME> singletonIterator(WME.createType((Individual) arg, _predicate, depends)); }
@Override public Iterator<WME> getMatches(final int argIndex, final Node arg) { if (_name != null || argIndex != 0) throw new IndexOutOfBoundsException(); if (!(arg instanceof Individual)) throw new IllegalArgumentException(); final DependencySet depends = arg.getDepends(_predicate); return (depends == null) ? IteratorUtils.<WME> emptyIterator() : IteratorUtils.<WME> singletonIterator(WME.createType((Individual) arg, _predicate, depends)); }
@Override public Iterator<WME> getMatches() { final Iterator<Individual> inds = (_name == null) ? _abox.getIndIterator() : IteratorUtils.singletonIterator(initNode()); return new NestedIterator<Individual, WME>(inds) { @Override public Iterator<WME> getInnerIterator(final Individual ind) { final DependencySet depends = ind.getDepends(_predicate); return (depends == null) ? IteratorUtils.<WME> emptyIterator() : IteratorUtils.<WME> singletonIterator(WME.createType(ind, _predicate, depends)); } }; }
@Override public Iterator<WME> getMatches() { final Iterator<Individual> inds = (_name == null) ? _abox.getIndIterator() : IteratorUtils.singletonIterator(initNode()); return new NestedIterator<Individual, WME>(inds) { @Override public Iterator<WME> getInnerIterator(final Individual ind) { final DependencySet depends = ind.getDepends(_predicate); return (depends == null) ? IteratorUtils.<WME> emptyIterator() : IteratorUtils.<WME> singletonIterator(WME.createType(ind, _predicate, depends)); } }; }
@Override public Iterator<WME> getInnerIterator(final Individual ind) { final DependencySet depends = ind.getDepends(_predicate); return (depends == null) ? IteratorUtils.<WME> emptyIterator() : IteratorUtils.<WME> singletonIterator(WME.createType(ind, _predicate, depends)); } };
@Override public Iterator<WME> getInnerIterator(final Individual ind) { final DependencySet depends = ind.getDepends(_predicate); return (depends == null) ? IteratorUtils.<WME> emptyIterator() : IteratorUtils.<WME> singletonIterator(WME.createType(ind, _predicate, depends)); } };
protected Iterator<WME> toWMEs(final EdgeList edges, final EdgeDirection dir) { if (edges.isEmpty()) return IteratorUtils.emptyIterator(); else if (edges.size() == 1) { final Edge edge = edges.get(0); return IteratorUtils.<WME> singletonIterator(createEdge(edge, dir)); } else { final List<WME> wmes = new ArrayList<>(edges.size()); for (final Edge edge : edges) wmes.add(createEdge(edge, dir)); return wmes.iterator(); } }
protected Iterator<WME> toWMEs(final EdgeList edges, final EdgeDirection dir) { if (edges.isEmpty()) return IteratorUtils.emptyIterator(); else if (edges.size() == 1) { final Edge edge = edges.get(0); return IteratorUtils.<WME> singletonIterator(createEdge(edge, dir)); } else { final List<WME> wmes = new ArrayList<>(edges.size()); for (final Edge edge : edges) wmes.add(createEdge(edge, dir)); return wmes.iterator(); } }
public Iterator<ATermAppl> getNominals(final ATermAppl term) { if (isOneOf(term)) { final ATermList list = (ATermList) term.getArgument(0); return new MultiListIterator(list); } else if (isNominal(term)) return IteratorUtils.singletonIterator(term); return IteratorUtils.emptyIterator(); }
public Iterator<ATermAppl> getNominals(final ATermAppl term) { if (isOneOf(term)) { final ATermList list = (ATermList) term.getArgument(0); return new MultiListIterator(list); } else if (isNominal(term)) return IteratorUtils.singletonIterator(term); return IteratorUtils.emptyIterator(); }
protected Iterator<CachedNode> getCachedNodes(final ABox abox, final ATermAppl c) { CachedNode node = abox.getCached(c); if (node != null) return IteratorUtils.singletonIterator(node); if (ATermUtils.isAnd(c)) { ATermList list = (ATermList) c.getArgument(0); final CachedNode[] nodes = new CachedNode[list.getLength()]; for (int i = 0; !list.isEmpty(); list = list.getNext()) { final ATermAppl d = (ATermAppl) list.getFirst(); node = abox.getCached(d); if (node == null) return IteratorUtils.emptyIterator(); else if (node.isBottom()) return IteratorUtils.singletonIterator(node); nodes[i++] = node; } return IteratorUtils.iterator(nodes); } return IteratorUtils.emptyIterator(); }
protected Iterator<CachedNode> getCachedNodes(final ABox abox, final ATermAppl c) { CachedNode node = abox.getCached(c); if (node != null) return IteratorUtils.singletonIterator(node); if (ATermUtils.isAnd(c)) { ATermList list = (ATermList) c.getArgument(0); final CachedNode[] nodes = new CachedNode[list.getLength()]; for (int i = 0; !list.isEmpty(); list = list.getNext()) { final ATermAppl d = (ATermAppl) list.getFirst(); node = abox.getCached(d); if (node == null) return IteratorUtils.emptyIterator(); else if (node.isBottom()) return IteratorUtils.singletonIterator(node); nodes[i++] = node; } return IteratorUtils.iterator(nodes); } return IteratorUtils.emptyIterator(); }