List<O> all({int? limit}) { var itr = iterable(); if (limit != null && limit > 0) { itr = itr.take(limit); } return itr.toList(); }