statement method

String statement ({bool pretty: false })

Implementation

String statement({bool pretty = false}) {
  var br = pretty ? '\n' : ' ';
  var select = _selectClause?.clause;
  var where = whereClauses;
  var limit = _limitClause?.clause;
  var offset = _offsetClause?.clause;
  var group = _groupByClause?.clause;
  var order = _orderByClause?.clause;

  var buf = StringBuffer();
  buf.writeAll(['SELECT ', select]);
  if (table != null) buf.writeAll([br, 'FROM ', table.$name]);
  if (where != null) buf.writeAll([br, where]);
  if (group != null) buf.writeAll([br, group]);
  if (order != null) buf.writeAll([br, order]);
  if (limit != null) buf.writeAll([br, limit]);
  if (offset != null) buf.writeAll([br, offset]);
  buf.write(';');
  var query = buf.toString();
  return query;
}