get method

Future<List<T>> get()

Implementation

Future<List<T>> get() async {
  _update = null;
  _insert = null;
  _delete = null;

  _select ??= Select(items: []);

  String query = toSql();

  if (log) {
    Log.info('[QUERY BUILDER] Executing query...');
    Log.info(query);
  }

  List<Map<String, dynamic>> items = await Database.database.rawQuery(
    query,
  );

  if (log) {
    Log.info('[QUERY BUILDER] Query result...');
    Log.info(jsonEncode(items));
  }

  if (transformer == null) {
    return items as List<T>;
  }

  List<T> result = [];

  for (var item in items) {
    T newItem = transformer!(item);

    result.add(newItem);
  }

  return result;
}