clone method
Clones the current query builder instance.
Implementation
@override
QueryBuilderInterface<T> clone() {
final q =
QueryBuilder<T>(connection, grammar, table, modelFactory: modelFactory);
q._columns = List.from(_columns);
q._wheres.addAll(_wheres.map((e) => Map<String, dynamic>.from(e)));
q._orders.addAll(_orders.map((e) => Map<String, dynamic>.from(e)));
q._limit = _limit;
q._offset = _offset;
q._distinct = _distinct;
q._selectBindings.addAll(_selectBindings);
q._fromBindings.addAll(_fromBindings);
q._joinBindings.addAll(_joinBindings);
q._whereBindings.addAll(_whereBindings);
q._havingBindings.addAll(_havingBindings);
q._joins.addAll(_joins.map((e) => Map<String, dynamic>.from(e)));
q._groups.addAll(_groups);
q._havings.addAll(_havings.map((e) => Map<String, dynamic>.from(e)));
q._unions.addAll(_unions.map((e) => Map<String, dynamic>.from(e)));
q._lock = _lock;
q._with.addAll(_with);
q._without.addAll(_without);
q._withOnly.addAll(_withOnly);
return q;
}