From b0de1c595c9c973cb068d559f637c1fe1be88bc2 Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Fri, 4 Nov 2022 12:33:47 +0100 Subject: [PATCH] [jOOQ/jOOQ#13593] transformPatternsFlattenCase (rename) --- .../src/main/java/org/jooq/conf/Settings.java | 92 +++++++++---------- .../org/jooq/xsd/jooq-runtime-3.18.0.xsd | 18 ++-- 2 files changed, 55 insertions(+), 55 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/conf/Settings.java b/jOOQ/src/main/java/org/jooq/conf/Settings.java index a779e64530..c47f6ec0e8 100644 --- a/jOOQ/src/main/java/org/jooq/conf/Settings.java +++ b/jOOQ/src/main/java/org/jooq/conf/Settings.java @@ -183,8 +183,6 @@ public class Settings @XmlElement(defaultValue = "true") protected Boolean transformPatternsCaseElseNull = true; @XmlElement(defaultValue = "true") - protected Boolean transformPatternsCaseElseCase = true; - @XmlElement(defaultValue = "true") protected Boolean transformPatternsCaseUnreachableClauses = true; @XmlElement(defaultValue = "true") protected Boolean transformPatternsCaseDistinctToDecode = true; @@ -199,6 +197,8 @@ public class Settings @XmlElement(defaultValue = "true") protected Boolean transformPatternsFlattenCaseAbbreviation = true; @XmlElement(defaultValue = "true") + protected Boolean transformPatternsFlattenCase = true; + @XmlElement(defaultValue = "true") protected Boolean transformPatternsTrivialCaseAbbreviation = true; @XmlElement(defaultValue = "true") protected Boolean transformPatternsTrivialPredicates = true; @@ -2258,34 +2258,6 @@ public class Settings this.transformPatternsCaseElseNull = value; } - /** - * Transform CASE … ELSE CASE … by flattening the nested CASE. - *

- * CASE WHEN a THEN b ELSE CASE WHEN c THEN d END END is equivalent to CASE WHEN a THEN b WHEN c THEN d END. - *

- * This feature is available in the commercial distribution only. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isTransformPatternsCaseElseCase() { - return transformPatternsCaseElseCase; - } - - /** - * Sets the value of the transformPatternsCaseElseCase property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setTransformPatternsCaseElseCase(Boolean value) { - this.transformPatternsCaseElseCase = value; - } - /** * Transform CASE by removing unreachable clauses. *

@@ -2503,6 +2475,34 @@ public class Settings this.transformPatternsFlattenCaseAbbreviation = value; } + /** + * Transform CASE … ELSE CASE … by flattening the nested CASE. + *

+ * CASE WHEN a THEN b ELSE CASE WHEN c THEN d END END is equivalent to CASE WHEN a THEN b WHEN c THEN d END. + *

+ * This feature is available in the commercial distribution only. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public Boolean isTransformPatternsFlattenCase() { + return transformPatternsFlattenCase; + } + + /** + * Sets the value of the transformPatternsFlattenCase property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setTransformPatternsFlattenCase(Boolean value) { + this.transformPatternsFlattenCase = value; + } + /** * Transform trivial case abbreviations like NVL(NULL, a) to a. *

@@ -5568,11 +5568,6 @@ public class Settings return this; } - public Settings withTransformPatternsCaseElseCase(Boolean value) { - setTransformPatternsCaseElseCase(value); - return this; - } - public Settings withTransformPatternsCaseUnreachableClauses(Boolean value) { setTransformPatternsCaseUnreachableClauses(value); return this; @@ -5608,6 +5603,11 @@ public class Settings return this; } + public Settings withTransformPatternsFlattenCase(Boolean value) { + setTransformPatternsFlattenCase(value); + return this; + } + public Settings withTransformPatternsTrivialCaseAbbreviation(Boolean value) { setTransformPatternsTrivialCaseAbbreviation(value); return this; @@ -6595,7 +6595,6 @@ public class Settings builder.append("transformPatternsMergeRangePredicates", transformPatternsMergeRangePredicates); builder.append("transformPatternsMergeBetweenSymmetricPredicates", transformPatternsMergeBetweenSymmetricPredicates); builder.append("transformPatternsCaseElseNull", transformPatternsCaseElseNull); - builder.append("transformPatternsCaseElseCase", transformPatternsCaseElseCase); builder.append("transformPatternsCaseUnreachableClauses", transformPatternsCaseUnreachableClauses); builder.append("transformPatternsCaseDistinctToDecode", transformPatternsCaseDistinctToDecode); builder.append("transformPatternsCaseMergeWhenWhen", transformPatternsCaseMergeWhenWhen); @@ -6603,6 +6602,7 @@ public class Settings builder.append("transformPatternsCaseToCaseAbbreviation", transformPatternsCaseToCaseAbbreviation); builder.append("transformPatternsSimplifyCaseAbbreviation", transformPatternsSimplifyCaseAbbreviation); builder.append("transformPatternsFlattenCaseAbbreviation", transformPatternsFlattenCaseAbbreviation); + builder.append("transformPatternsFlattenCase", transformPatternsFlattenCase); builder.append("transformPatternsTrivialCaseAbbreviation", transformPatternsTrivialCaseAbbreviation); builder.append("transformPatternsTrivialPredicates", transformPatternsTrivialPredicates); builder.append("transformPatternsTrivialBitwiseOperations", transformPatternsTrivialBitwiseOperations); @@ -7335,15 +7335,6 @@ public class Settings return false; } } - if (transformPatternsCaseElseCase == null) { - if (other.transformPatternsCaseElseCase!= null) { - return false; - } - } else { - if (!transformPatternsCaseElseCase.equals(other.transformPatternsCaseElseCase)) { - return false; - } - } if (transformPatternsCaseUnreachableClauses == null) { if (other.transformPatternsCaseUnreachableClauses!= null) { return false; @@ -7407,6 +7398,15 @@ public class Settings return false; } } + if (transformPatternsFlattenCase == null) { + if (other.transformPatternsFlattenCase!= null) { + return false; + } + } else { + if (!transformPatternsFlattenCase.equals(other.transformPatternsFlattenCase)) { + return false; + } + } if (transformPatternsTrivialCaseAbbreviation == null) { if (other.transformPatternsTrivialCaseAbbreviation!= null) { return false; @@ -8533,7 +8533,6 @@ public class Settings result = ((prime*result)+((transformPatternsMergeRangePredicates == null)? 0 :transformPatternsMergeRangePredicates.hashCode())); result = ((prime*result)+((transformPatternsMergeBetweenSymmetricPredicates == null)? 0 :transformPatternsMergeBetweenSymmetricPredicates.hashCode())); result = ((prime*result)+((transformPatternsCaseElseNull == null)? 0 :transformPatternsCaseElseNull.hashCode())); - result = ((prime*result)+((transformPatternsCaseElseCase == null)? 0 :transformPatternsCaseElseCase.hashCode())); result = ((prime*result)+((transformPatternsCaseUnreachableClauses == null)? 0 :transformPatternsCaseUnreachableClauses.hashCode())); result = ((prime*result)+((transformPatternsCaseDistinctToDecode == null)? 0 :transformPatternsCaseDistinctToDecode.hashCode())); result = ((prime*result)+((transformPatternsCaseMergeWhenWhen == null)? 0 :transformPatternsCaseMergeWhenWhen.hashCode())); @@ -8541,6 +8540,7 @@ public class Settings result = ((prime*result)+((transformPatternsCaseToCaseAbbreviation == null)? 0 :transformPatternsCaseToCaseAbbreviation.hashCode())); result = ((prime*result)+((transformPatternsSimplifyCaseAbbreviation == null)? 0 :transformPatternsSimplifyCaseAbbreviation.hashCode())); result = ((prime*result)+((transformPatternsFlattenCaseAbbreviation == null)? 0 :transformPatternsFlattenCaseAbbreviation.hashCode())); + result = ((prime*result)+((transformPatternsFlattenCase == null)? 0 :transformPatternsFlattenCase.hashCode())); result = ((prime*result)+((transformPatternsTrivialCaseAbbreviation == null)? 0 :transformPatternsTrivialCaseAbbreviation.hashCode())); result = ((prime*result)+((transformPatternsTrivialPredicates == null)? 0 :transformPatternsTrivialPredicates.hashCode())); result = ((prime*result)+((transformPatternsTrivialBitwiseOperations == null)? 0 :transformPatternsTrivialBitwiseOperations.hashCode())); diff --git a/jOOQ/src/main/resources/org/jooq/xsd/jooq-runtime-3.18.0.xsd b/jOOQ/src/main/resources/org/jooq/xsd/jooq-runtime-3.18.0.xsd index db5204be9d..1ac7293f81 100644 --- a/jOOQ/src/main/resources/org/jooq/xsd/jooq-runtime-3.18.0.xsd +++ b/jOOQ/src/main/resources/org/jooq/xsd/jooq-runtime-3.18.0.xsd @@ -595,14 +595,6 @@ This feature is available in the commercial distribution only.]]>< This feature is available in the commercial distribution only.]]> - - CASE .. ELSE CASE .. by flattening the nested CASE. -

-CASE WHEN a THEN b ELSE CASE WHEN c THEN d END END is equivalent to CASE WHEN a THEN b WHEN c THEN d END. -

-This feature is available in the commercial distribution only.]]> - - CASE by removing unreachable clauses.

@@ -679,7 +671,15 @@ Nested CASE abbreviations can be flattened, as such:

This feature is available in the commercial distribution only.]]> - + + + CASE .. ELSE CASE .. by flattening the nested CASE. +

+CASE WHEN a THEN b ELSE CASE WHEN c THEN d END END is equivalent to CASE WHEN a THEN b WHEN c THEN d END. +

+This feature is available in the commercial distribution only.]]> + + NVL(NULL, a) to a.