From 3ba7a7e9f3b94eace9c8befa1cee533eef26a4c0 Mon Sep 17 00:00:00 2001 From: Thom Lamb Date: Wed, 27 May 2026 14:33:48 -0500 Subject: [PATCH] refactor(linq): extract GetEmptyQueryable helper for empty-return paths MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit DRYs the four `Enumerable.Empty().AsQueryable()` returns added in `2c23ba4` (S1168 fix) into a single `public static IQueryable GetEmptyQueryable()` helper on `LinqQueryBreakdown`. No behavior change — all 1180 tests stay green. Co-Authored-By: Thom Lamb --- .../Breakdowns/LinqQueryBreakdown.cs | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/src/Strata.SqlTools.LinqToSql/Breakdowns/LinqQueryBreakdown.cs b/src/Strata.SqlTools.LinqToSql/Breakdowns/LinqQueryBreakdown.cs index db49c0a..1f2d208 100644 --- a/src/Strata.SqlTools.LinqToSql/Breakdowns/LinqQueryBreakdown.cs +++ b/src/Strata.SqlTools.LinqToSql/Breakdowns/LinqQueryBreakdown.cs @@ -1,5 +1,5 @@ -using System.Linq.Expressions; using Strata.SqlTools.Breakdowns.SqlServer; +using System.Linq.Expressions; using PostgreSqlBreakdown = Strata.SqlTools.Breakdowns.PostgreSql.QueryBreakdown; using SnowflakeBreakdown = Strata.SqlTools.Breakdowns.Snowflake.QueryBreakdown; @@ -195,24 +195,32 @@ public class LinqQueryBreakdown : QueryBreakdown { if (OriginalExpression == null) { - return Enumerable.Empty().AsQueryable(); + return GetEmptyQueryable(); } try { if (OriginalExpression is Expression && EntityType == typeof(T)) { - return Enumerable.Empty().AsQueryable(); + return GetEmptyQueryable(); } - return Enumerable.Empty().AsQueryable(); + return GetEmptyQueryable(); } catch { - return Enumerable.Empty().AsQueryable(); + return GetEmptyQueryable(); } } + /// + /// Get and empty queryable of T + /// + /// The entity type for the query. + /// An empty IQueryable of the type. + public static IQueryable GetEmptyQueryable() where T : class + => Enumerable.Empty().AsQueryable(); + /// /// Analyzes an INSERT operation for the given entity. ///