protected NotItem addNot(Item item,NotItem not) { if (not==null) not=new NotItem(); not.addNegativeItem(item); return not; }
private void addNegativeItems(NotItem notItem, List<Object> children) { for (Object child: butFirst(children)) { TypeCheck.ensureInstanceOf(child, Item.class); notItem.addNegativeItem((Item) child); } }
((NotItem) root).addNegativeItem(item); return root; ((NotItem) firstChild).addNegativeItem(item); return root; } else { not.addNegativeItem(item); if (rootAsRank.getItemCount() == 0) { return not; not.addNegativeItem(item); return not;
NotItem notItem=(NotItem)first; if (termType==TermType.NOT) { notItem.addNegativeItem(second);
private void convertVarArgsAnd(OperatorNode<ExpressionOperator> ast, int argIdx, AndItem outAnd, NotItem outNot) { Iterable<OperatorNode<ExpressionOperator>> args = ast.getArgument(argIdx); for (OperatorNode<ExpressionOperator> arg : args) { assertHasOperator(arg, ExpressionOperator.class); if (arg.getOperator() == ExpressionOperator.NOT) { OperatorNode<ExpressionOperator> exp = arg.getArgument(0); assertHasOperator(exp, ExpressionOperator.class); outNot.addNegativeItem(convertExpression(exp)); } else { outAnd.addItem(convertExpression(arg)); } } }
private static CompositeItem extractAndNot(AndItem parent) { NotItem theOnlyNot = null; for (int i = 0; i < parent.getItemCount(); i++) { Item child = parent.getItem(i); if (child instanceof NotItem) { NotItem thisNot = (NotItem) child; parent.setItem(i, thisNot.getPositiveItem()); if (theOnlyNot == null) { theOnlyNot = thisNot; theOnlyNot.setPositiveItem(parent); } else { for (int j=1; j < thisNot.getItemCount(); j++) { theOnlyNot.addNegativeItem(thisNot.getItem(j)); } } } } return (theOnlyNot != null) ? theOnlyNot : parent; }
if (not == null && item != null) { not = new NotItem(); not.addNegativeItem(item); topLevelItem = combineItems(topLevelItem, not); } else if (item != null) { not.addNegativeItem(item);