join

fun List<QueryFragment>.join(separator: String, prefix: String = "", postfix: String = "", addParenthesis: Boolean = true): QueryFragment

Joins the fragments that carry anything, merging their parameters. Joining none gives an empty fragment, without prefix and postfix, which a clause leaves out.

Each fragment is parenthesised, so "a = 1 OR b = 2" joined to "c = 3" with " AND " keeps its meaning. Turn addParenthesis off only where every fragment is a single term.

Parameters

prefix

Rendered in front where anything renders at all, such as "WHERE " for a hand-written query; the builders supply their own keyword.

Throws

INVALID_ARGUMENT where two fragments name the same parameter with different values.