static <T> BopTerm<T> build(final List<? extends Predicate<? super T>> bops) {
			BopTerm<T> start = null;
			for (var tokens : bops) {
				final BopTerm<T> term = new BopTerm<>(tokens);
				if (start == null) {
					start = term;
				} else {
					start.append(term);
				}
			}

			return start;
		}
Builds a linked chain of binary operations. Operations with lower
<em>precedence</em> are at the beginning of the chain and operations
with higher <em>precedence</em> are appended to the end of the linked
operation term chain.

@param bops the list of binary operations with a given precedence
@param <T> the token value type used as input for the parser
@return the linked operation term
jenetics.ext/src/main/java/io/jenetics/ext/internal/util/FormulaParser.java