private OrList buildOrList() {
		OrList localOrList = new OrList();
		if (constraintSets.isEmpty()) {
			return localOrList;
		}

		AndList currentAndList = new AndList();
		localOrList.addAndList(currentAndList);
		currentAndList.addConstraintSet(constraintSets.get(0));

		for (int i = 1; i < constraintSets.size(); i++) {
			ColumnConstraintSet<R, ?> columnConstraintSet = constraintSets.get(i);
			// if the logical operation is OR, start a new list of ANDed sets.
			if (columnConstraintSet.getLogicOperation() == LogicOperation.OR) {
				currentAndList = new AndList();
				localOrList.addAndList(currentAndList);
			}
			currentAndList.addConstraintSet(columnConstraintSet);
		}
		return localOrList;
	}
Organizes the list of constraint sets into groups that will first be "ANDed" together, then
those "AND" groups will be "ORed" together.
@return the list of "AND" groups that will be "ORed" together.
Ghidra/Framework/Docking/src/main/java/docking/widgets/table/columnfilter/ColumnBasedTableFilter.java