Files
sql-utilities/src/Strata.SqlTools.SqlServer/ExpressionFactory/Query
Thom LambandClaude Opus 4.7 e01cfae359 perf+docs: fix IsValid allocation regression and document FilterGroup asymmetry
Code review follow-up on 6f85358:

- CalculationFilterGroup.IsValid() previously called GetValidFilters().Any(),
  which materialized a full filtered List<CalculationFilter> just to check
  existence. Reimplement directly as Filters.Any(x => x.IsValid()) so
  IsValid() recovers its pre-refactor O(1) early-exit behavior without
  allocations. GetValidFilters() remains for callers that need the full
  materialized list.

- QueryConfigExtensions.GetAllColumnIds line 16 uses FilterGroup (not
  CalculationFilterGroup), which pre-filters in its JsonConstructor and
  has no GetValidFilters() method. Add a comment to document the
  intentional asymmetry between line 14 and line 16.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-19 17:01:08 -05:00
..
2026-05-12 08:52:33 -05:00
2026-05-12 08:52:33 -05:00
2026-05-12 08:52:33 -05:00