buildFilterSql function
Sql?
buildFilterSql(
- Filter filter,
- Iterable<
(PostgresqlDataAttribute, PostgresqlRelation)> attributes
Implementation
Sql? buildFilterSql(
Filter filter,
Iterable<(PostgresqlDataAttribute, PostgresqlRelation)> attributes,
) {
return switch (filter) {
EmptyFilter() => null,
FilterGroup() => Sql.joinWrap(
filter.filters
.map((e) => buildFilterSql(e, attributes))
.nonNulls
.separatedBy(filter.isConjunction ? Sql.and : Sql.or),
),
CompareFilter(:final left, :final type, :final right) => _compareSql(
attributes,
left,
type,
right,
),
};
}