From a971c491c08b6d68479e2bb758ccce7cddd9ce53 Mon Sep 17 00:00:00 2001 From: "R. C. Howell" Date: Fri, 26 Jul 2024 10:40:43 -0700 Subject: [PATCH 1/7] Replaces internal IR ids/paths with the catalog ones --- .../src/main/kotlin/org/partiql/planner/internal/Env.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt index 22c23fb239..cff44413b2 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt @@ -1,7 +1,7 @@ package org.partiql.planner.internal -import org.partiql.planner.catalog.Name import org.partiql.planner.catalog.Session +import org.partiql.planner.catalog.Name import org.partiql.planner.internal.casts.CastTable import org.partiql.planner.internal.casts.Coercions import org.partiql.planner.internal.ir.Ref From b7d65c9f97be6d44cf4e31af206016a2cb47a955 Mon Sep 17 00:00:00 2001 From: "R. C. Howell" Date: Fri, 26 Jul 2024 13:26:41 -0700 Subject: [PATCH 2/7] Removes functions from partiql-spi --- .../org/partiql/planner/internal}/fn/Agg.kt | 2 +- .../planner/internal}/fn/AggSignature.kt | 2 +- .../org/partiql/planner/internal}/fn/Fn.kt | 2 +- .../planner/internal}/fn/FnParameter.kt | 2 +- .../planner/internal}/fn/FnSignature.kt | 2 +- .../org/partiql/planner/internal}/fn/Index.kt | 12 +- .../partiql/planner/internal}/fn/IndexMap.kt | 4 +- .../planner/internal/fn}/sql/PartiQLExts.kt | 2 +- .../planner/internal/fn}/sql/SqlAgg.kt | 2 +- .../internal/fn}/sql/SqlAggProvider.kt | 2 +- .../planner/internal/fn}/sql/SqlBindings.kt | 2 +- .../planner/internal/fn}/sql/SqlBuiltins.kt | 2 +- .../planner/internal/fn}/sql/SqlConnector.kt | 11 +- .../partiql/planner/internal/fn}/sql/SqlFn.kt | 2 +- .../planner/internal/fn}/sql/SqlFnProvider.kt | 2 +- .../planner/internal/fn}/sql/SqlMetadata.kt | 6 +- .../internal/fn}/sql/builtins/AggAny.kt | 2 +- .../internal/fn}/sql/builtins/AggAvg.kt | 2 +- .../internal/fn}/sql/builtins/AggCount.kt | 2 +- .../internal/fn}/sql/builtins/AggEvery.kt | 2 +- .../internal/fn}/sql/builtins/AggGroupAs.kt | 2 +- .../internal/fn}/sql/builtins/AggMax.kt | 2 +- .../internal/fn}/sql/builtins/AggMin.kt | 2 +- .../internal/fn}/sql/builtins/AggSome.kt | 2 +- .../internal/fn}/sql/builtins/AggSum.kt | 2 +- .../internal/fn}/sql/builtins/FnAbs.kt | 2 +- .../internal/fn}/sql/builtins/FnAnd.kt | 2 +- .../internal/fn}/sql/builtins/FnBetween.kt | 2 +- .../internal/fn}/sql/builtins/FnBitLength.kt | 2 +- .../internal/fn}/sql/builtins/FnBitwiseAnd.kt | 2 +- .../fn}/sql/builtins/FnCardinality.kt | 2 +- .../internal/fn}/sql/builtins/FnCharLength.kt | 2 +- .../internal/fn}/sql/builtins/FnCollAgg.kt | 2 +- .../internal/fn}/sql/builtins/FnConcat.kt | 2 +- .../fn}/sql/builtins/FnCurrentDate.kt | 2 +- .../fn}/sql/builtins/FnCurrentUser.kt | 2 +- .../internal/fn}/sql/builtins/FnDateAddDay.kt | 2 +- .../fn}/sql/builtins/FnDateAddHour.kt | 2 +- .../fn}/sql/builtins/FnDateAddMinute.kt | 2 +- .../fn}/sql/builtins/FnDateAddMonth.kt | 2 +- .../fn}/sql/builtins/FnDateAddSecond.kt | 2 +- .../fn}/sql/builtins/FnDateAddYear.kt | 2 +- .../fn}/sql/builtins/FnDateDiffDay.kt | 2 +- .../fn}/sql/builtins/FnDateDiffHour.kt | 2 +- .../fn}/sql/builtins/FnDateDiffMinute.kt | 2 +- .../fn}/sql/builtins/FnDateDiffMonth.kt | 2 +- .../fn}/sql/builtins/FnDateDiffSecond.kt | 2 +- .../fn}/sql/builtins/FnDateDiffYear.kt | 2 +- .../internal/fn}/sql/builtins/FnDivide.kt | 2 +- .../planner/internal/fn}/sql/builtins/FnEq.kt | 2 +- .../internal/fn}/sql/builtins/FnExtract.kt | 2 +- .../planner/internal/fn}/sql/builtins/FnGt.kt | 2 +- .../internal/fn}/sql/builtins/FnGte.kt | 2 +- .../fn}/sql/builtins/FnInCollection.kt | 2 +- .../internal/fn}/sql/builtins/FnIsAny.kt | 2 +- .../internal/fn}/sql/builtins/FnIsBag.kt | 2 +- .../internal/fn}/sql/builtins/FnIsBinary.kt | 2 +- .../internal/fn}/sql/builtins/FnIsBlob.kt | 2 +- .../internal/fn}/sql/builtins/FnIsBool.kt | 2 +- .../internal/fn}/sql/builtins/FnIsByte.kt | 2 +- .../internal/fn}/sql/builtins/FnIsChar.kt | 2 +- .../internal/fn}/sql/builtins/FnIsClob.kt | 2 +- .../internal/fn}/sql/builtins/FnIsDate.kt | 2 +- .../internal/fn}/sql/builtins/FnIsDecimal.kt | 2 +- .../fn}/sql/builtins/FnIsDecimalArbitrary.kt | 2 +- .../internal/fn}/sql/builtins/FnIsFloat32.kt | 2 +- .../internal/fn}/sql/builtins/FnIsFloat64.kt | 2 +- .../internal/fn}/sql/builtins/FnIsInt.kt | 2 +- .../internal/fn}/sql/builtins/FnIsInt16.kt | 2 +- .../internal/fn}/sql/builtins/FnIsInt32.kt | 2 +- .../internal/fn}/sql/builtins/FnIsInt64.kt | 2 +- .../internal/fn}/sql/builtins/FnIsInt8.kt | 2 +- .../internal/fn}/sql/builtins/FnIsInterval.kt | 2 +- .../internal/fn}/sql/builtins/FnIsList.kt | 2 +- .../internal/fn}/sql/builtins/FnIsMissing.kt | 2 +- .../internal/fn}/sql/builtins/FnIsNull.kt | 2 +- .../internal/fn}/sql/builtins/FnIsSexp.kt | 2 +- .../internal/fn}/sql/builtins/FnIsString.kt | 2 +- .../internal/fn}/sql/builtins/FnIsStruct.kt | 2 +- .../internal/fn}/sql/builtins/FnIsSymbol.kt | 2 +- .../internal/fn}/sql/builtins/FnIsTime.kt | 2 +- .../fn}/sql/builtins/FnIsTimestamp.kt | 2 +- .../internal/fn}/sql/builtins/FnLike.kt | 2 +- .../internal/fn}/sql/builtins/FnLikeEscape.kt | 2 +- .../internal/fn}/sql/builtins/FnLower.kt | 2 +- .../planner/internal/fn}/sql/builtins/FnLt.kt | 2 +- .../internal/fn}/sql/builtins/FnLte.kt | 2 +- .../internal/fn}/sql/builtins/FnMinus.kt | 2 +- .../internal/fn}/sql/builtins/FnModulo.kt | 2 +- .../internal/fn}/sql/builtins/FnNeg.kt | 2 +- .../internal/fn}/sql/builtins/FnNot.kt | 2 +- .../fn}/sql/builtins/FnOctetLength.kt | 2 +- .../planner/internal/fn}/sql/builtins/FnOr.kt | 2 +- .../internal/fn}/sql/builtins/FnPlus.kt | 2 +- .../internal/fn}/sql/builtins/FnPos.kt | 2 +- .../internal/fn}/sql/builtins/FnPosition.kt | 2 +- .../internal/fn}/sql/builtins/FnSubstring.kt | 2 +- .../internal/fn}/sql/builtins/FnTimes.kt | 2 +- .../internal/fn}/sql/builtins/FnTrim.kt | 2 +- .../internal/fn}/sql/builtins/FnTrimChars.kt | 2 +- .../fn}/sql/builtins/FnTrimLeading.kt | 2 +- .../fn}/sql/builtins/FnTrimLeadingChars.kt | 2 +- .../fn}/sql/builtins/FnTrimTrailing.kt | 2 +- .../fn}/sql/builtins/FnTrimTrailingChars.kt | 2 +- .../internal/fn}/sql/builtins/FnUpper.kt | 2 +- .../internal/fn}/sql/builtins/FnUtcnow.kt | 2 +- .../fn}/sql/builtins/internal/Accumulator.kt | 2 +- .../builtins/internal/AccumulatorAnySome.kt | 2 +- .../sql/builtins/internal/AccumulatorAvg.kt | 2 +- .../sql/builtins/internal/AccumulatorCount.kt | 2 +- .../builtins/internal/AccumulatorCountStar.kt | 2 +- .../sql/builtins/internal/AccumulatorEvery.kt | 2 +- .../builtins/internal/AccumulatorGroupAs.kt | 2 +- .../sql/builtins/internal/AccumulatorMax.kt | 2 +- .../sql/builtins/internal/AccumulatorMin.kt | 2 +- .../sql/builtins/internal/AccumulatorSum.kt | 2 +- .../planner/internal/fn}/sql/exts/FnExists.kt | 2 +- .../planner/internal/fn}/sql/exts/FnSize.kt | 2 +- .../internal/fn}/sql/info/InfoSchema.kt | 14 +- .../planner/internal/fn}/sql/info/InfoView.kt | 2 +- .../internal/fn}/sql/info/InfoViewRoutines.kt | 2 +- .../internal/fn}/sql/utils/PatternUtils.kt | 2 +- .../internal/fn}/sql/utils/StringUtils.kt | 2 +- partiql-spi/api/partiql-spi.api | 483 ---------- .../org/partiql/spi/connector/Connector.kt | 17 - .../org/partiql/spi/connector/ConnectorAgg.kt | 29 - .../spi/connector/ConnectorAggProvider.kt | 26 - .../org/partiql/spi/connector/ConnectorFn.kt | 29 - .../spi/connector/ConnectorFnProvider.kt | 27 - .../partiql/spi/connector/ConnectorHandle.kt | 10 - .../spi/connector/ConnectorMetadata.kt | 19 - .../org/partiql/spi/fn/FnExperimental.kt | 7 - .../spi/connector/sql/HeaderCodeGen.kt | 188 ---- .../partiql/spi/connector/sql/SqlHeader.kt | 831 ------------------ .../partiql/plugins/local/LocalConnector.kt | 21 - .../partiql/plugins/memory/MemoryCatalog.kt | 15 +- .../plugins/memory/MemoryCatalogBuilder.kt | 22 +- .../partiql/plugins/memory/MemoryConnector.kt | 21 +- .../partiql/plugins/memory/MemoryMetadata.kt | 18 +- 139 files changed, 150 insertions(+), 1896 deletions(-) rename {partiql-spi/src/main/kotlin/org/partiql/spi => partiql-planner/src/main/kotlin/org/partiql/planner/internal}/fn/Agg.kt (95%) rename {partiql-spi/src/main/kotlin/org/partiql/spi => partiql-planner/src/main/kotlin/org/partiql/planner/internal}/fn/AggSignature.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi => partiql-planner/src/main/kotlin/org/partiql/planner/internal}/fn/Fn.kt (92%) rename {partiql-spi/src/main/kotlin/org/partiql/spi => partiql-planner/src/main/kotlin/org/partiql/planner/internal}/fn/FnParameter.kt (93%) rename {partiql-spi/src/main/kotlin/org/partiql/spi => partiql-planner/src/main/kotlin/org/partiql/planner/internal}/fn/FnSignature.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi => partiql-planner/src/main/kotlin/org/partiql/planner/internal}/fn/Index.kt (81%) rename {partiql-spi/src/main/kotlin/org/partiql/spi => partiql-planner/src/main/kotlin/org/partiql/planner/internal}/fn/IndexMap.kt (85%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/PartiQLExts.kt (92%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/SqlAgg.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/SqlAggProvider.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/SqlBindings.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/SqlBuiltins.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/SqlConnector.kt (77%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/SqlFn.kt (95%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/SqlFnProvider.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/SqlMetadata.kt (87%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/AggAny.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/AggAvg.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/AggCount.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/AggEvery.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/AggGroupAs.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/AggMax.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/AggMin.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/AggSome.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/AggSum.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnAbs.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnAnd.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnBetween.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnBitLength.kt (97%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnBitwiseAnd.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnCardinality.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnCharLength.kt (97%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnCollAgg.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnConcat.kt (97%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnCurrentDate.kt (93%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnCurrentUser.kt (93%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnDateAddDay.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnDateAddHour.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnDateAddMinute.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnDateAddMonth.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnDateAddSecond.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnDateAddYear.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnDateDiffDay.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnDateDiffHour.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnDateDiffMinute.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnDateDiffMonth.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnDateDiffSecond.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnDateDiffYear.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnDivide.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnEq.kt (97%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnExtract.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnGt.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnGte.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnInCollection.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsAny.kt (93%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsBag.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsBinary.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsBlob.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsBool.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsByte.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsChar.kt (97%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsClob.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsDate.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsDecimal.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsDecimalArbitrary.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsFloat32.kt (95%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsFloat64.kt (95%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsInt.kt (95%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsInt16.kt (97%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsInt32.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsInt64.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsInt8.kt (97%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsInterval.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsList.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsMissing.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsNull.kt (95%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsSexp.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsString.kt (97%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsStruct.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsSymbol.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsTime.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnIsTimestamp.kt (96%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnLike.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnLikeEscape.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnLower.kt (97%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnLt.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnLte.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnMinus.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnModulo.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnNeg.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnNot.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnOctetLength.kt (97%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnOr.kt (95%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnPlus.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnPos.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnPosition.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnSubstring.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnTimes.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnTrim.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnTrimChars.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnTrimLeading.kt (97%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnTrimLeadingChars.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnTrimTrailing.kt (97%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnTrimTrailingChars.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnUpper.kt (97%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/FnUtcnow.kt (94%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/internal/Accumulator.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/internal/AccumulatorAnySome.kt (89%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/internal/AccumulatorAvg.kt (91%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/internal/AccumulatorCount.kt (86%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/internal/AccumulatorCountStar.kt (88%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/internal/AccumulatorEvery.kt (90%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/internal/AccumulatorGroupAs.kt (86%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/internal/AccumulatorMax.kt (88%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/internal/AccumulatorMin.kt (87%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/builtins/internal/AccumulatorSum.kt (92%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/exts/FnExists.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/exts/FnSize.kt (98%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/info/InfoSchema.kt (69%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/info/InfoView.kt (87%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/info/InfoViewRoutines.kt (95%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/utils/PatternUtils.kt (99%) rename {partiql-spi/src/main/kotlin/org/partiql/spi/connector => partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn}/sql/utils/StringUtils.kt (99%) delete mode 100644 partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorAgg.kt delete mode 100644 partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorAggProvider.kt delete mode 100644 partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorFn.kt delete mode 100644 partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorFnProvider.kt delete mode 100644 partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnExperimental.kt delete mode 100644 partiql-spi/src/test/kotlin/org/partiql/spi/connector/sql/HeaderCodeGen.kt delete mode 100644 partiql-spi/src/test/kotlin/org/partiql/spi/connector/sql/SqlHeader.kt diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/Agg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Agg.kt similarity index 95% rename from partiql-spi/src/main/kotlin/org/partiql/spi/fn/Agg.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Agg.kt index 485ce2f0eb..7477e33e49 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/Agg.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Agg.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.fn +package org.partiql.planner.internal.fn import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/AggSignature.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/AggSignature.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/fn/AggSignature.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/AggSignature.kt index 3e797a60da..4c197c76ae 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/AggSignature.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/AggSignature.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.fn +package org.partiql.planner.internal.fn import org.partiql.types.PType import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/Fn.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Fn.kt similarity index 92% rename from partiql-spi/src/main/kotlin/org/partiql/spi/fn/Fn.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Fn.kt index e0744ec89a..ed4e41ff87 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/Fn.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Fn.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.fn +package org.partiql.planner.internal.fn import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnParameter.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnParameter.kt similarity index 93% rename from partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnParameter.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnParameter.kt index 9905cf1f00..d2448be80b 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnParameter.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnParameter.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.fn +package org.partiql.planner.internal.fn import org.partiql.types.PType import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnSignature.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnSignature.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnSignature.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnSignature.kt index d7e4a6ef30..71595ae0a2 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnSignature.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnSignature.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.fn +package org.partiql.planner.internal.fn import org.partiql.types.PType import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/Index.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Index.kt similarity index 81% rename from partiql-spi/src/main/kotlin/org/partiql/spi/fn/Index.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Index.kt index 738f2ed901..218bc5d373 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/Index.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Index.kt @@ -1,6 +1,6 @@ -package org.partiql.spi.fn +package org.partiql.planner.internal.fn -import org.partiql.spi.connector.ConnectorPath +import org.partiql.planner.internal.connector.ConnectorPath /** * Utility class for an optimized function lookup data structure. Right now this is read only. @@ -46,8 +46,8 @@ public interface Index { */ public abstract fun build(): Index - public class Fn : Builder() { - override fun build(): Index { + public class Fn : Builder() { + override fun build(): Index { val fns = builtins .groupBy { it.signature.name.uppercase() } .mapValues { e -> e.value.associateBy { f -> f.signature.specific } } @@ -55,8 +55,8 @@ public interface Index { } } - public class Agg : Builder() { - override fun build(): Index { + public class Agg : Builder() { + override fun build(): Index { val fns = builtins .groupBy { it.signature.name.uppercase() } .mapValues { e -> e.value.associateBy { f -> f.signature.specific } } diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/IndexMap.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/IndexMap.kt similarity index 85% rename from partiql-spi/src/main/kotlin/org/partiql/spi/fn/IndexMap.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/IndexMap.kt index 660f099663..2587897455 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/IndexMap.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/IndexMap.kt @@ -1,6 +1,6 @@ -package org.partiql.spi.fn +package org.partiql.planner.internal.fn -import org.partiql.spi.connector.ConnectorPath +import org.partiql.planner.internal.connector.ConnectorPath /** * An implementation of [Index] which uses the normalized paths as map keys. diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/PartiQLExts.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/PartiQLExts.kt similarity index 92% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/PartiQLExts.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/PartiQLExts.kt index 5d52b73c0b..007f2edabf 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/PartiQLExts.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/PartiQLExts.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql +package org.partiql.planner.internal.fn.sql /* ktlint-disable no-wildcard-imports */ import org.partiql.spi.connector.sql.exts.* diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlAgg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlAgg.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlAgg.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlAgg.kt index 90912f93dd..880d2de4ef 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlAgg.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlAgg.kt @@ -12,7 +12,7 @@ * language governing permissions and limitations under the License. */ -package org.partiql.spi.connector.sql +package org.partiql.planner.internal.fn.sql import org.partiql.spi.connector.ConnectorAgg import org.partiql.spi.connector.ConnectorFn diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlAggProvider.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlAggProvider.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlAggProvider.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlAggProvider.kt index 38a4f0236d..cfd36e06d9 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlAggProvider.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlAggProvider.kt @@ -12,7 +12,7 @@ * language governing permissions and limitations under the License. */ -package org.partiql.spi.connector.sql +package org.partiql.planner.internal.fn.sql import org.partiql.spi.connector.ConnectorAggProvider import org.partiql.spi.connector.ConnectorFnProvider diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlBindings.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlBindings.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlBindings.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlBindings.kt index 116db91f0f..f794f9817a 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlBindings.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlBindings.kt @@ -12,7 +12,7 @@ * language governing permissions and limitations under the License. */ -package org.partiql.spi.connector.sql +package org.partiql.planner.internal.fn.sql import org.partiql.spi.connector.ConnectorBindings import org.partiql.spi.connector.ConnectorPath diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlBuiltins.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlBuiltins.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlBuiltins.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlBuiltins.kt index bc13d3b524..b52a423b36 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlBuiltins.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlBuiltins.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql +package org.partiql.planner.internal.fn.sql /* ktlint-disable no-wildcard-imports */ import org.partiql.spi.connector.sql.builtins.* diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlConnector.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlConnector.kt similarity index 77% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlConnector.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlConnector.kt index 5d2ca12131..72af4e008f 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlConnector.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlConnector.kt @@ -12,7 +12,7 @@ * language governing permissions and limitations under the License. */ -package org.partiql.spi.connector.sql +package org.partiql.planner.internal.fn.sql import org.partiql.spi.connector.Connector import org.partiql.spi.connector.ConnectorAggProvider @@ -40,13 +40,14 @@ public abstract class SqlConnector : Connector { * @param session * @return */ - abstract override fun getMetadata(session: ConnectorSession): SqlMetadata + abstract override fun getMetadata(session: ConnectorSession): org.partiql.planner.internal.fn.sql.SqlMetadata - override fun getBindings(): ConnectorBindings = SqlBindings(info) + override fun getBindings(): ConnectorBindings = org.partiql.planner.internal.fn.sql.SqlBindings(info) @FnExperimental - override fun getFunctions(): ConnectorFnProvider = SqlFnProvider(info.functions) + override fun getFunctions(): ConnectorFnProvider = org.partiql.planner.internal.fn.sql.SqlFnProvider(info.functions) @FnExperimental - override fun getAggregations(): ConnectorAggProvider = SqlAggProvider(info.aggregations) + override fun getAggregations(): ConnectorAggProvider = + org.partiql.planner.internal.fn.sql.SqlAggProvider(info.aggregations) } diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlFn.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlFn.kt similarity index 95% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlFn.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlFn.kt index 11a90e42cc..dda218c785 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlFn.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlFn.kt @@ -12,7 +12,7 @@ * language governing permissions and limitations under the License. */ -package org.partiql.spi.connector.sql +package org.partiql.planner.internal.fn.sql import org.partiql.spi.connector.ConnectorFn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlFnProvider.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlFnProvider.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlFnProvider.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlFnProvider.kt index a74e5e95b9..8594ca6696 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlFnProvider.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlFnProvider.kt @@ -12,7 +12,7 @@ * language governing permissions and limitations under the License. */ -package org.partiql.spi.connector.sql +package org.partiql.planner.internal.fn.sql import org.partiql.spi.connector.ConnectorFnProvider import org.partiql.spi.connector.ConnectorPath diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlMetadata.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlMetadata.kt similarity index 87% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlMetadata.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlMetadata.kt index 128085745c..2ee9bfa8d0 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/SqlMetadata.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlMetadata.kt @@ -12,7 +12,7 @@ * language governing permissions and limitations under the License. */ -package org.partiql.spi.connector.sql +package org.partiql.planner.internal.fn.sql import org.partiql.spi.BindingPath import org.partiql.spi.connector.ConnectorHandle @@ -49,7 +49,7 @@ public open class SqlMetadata( if (variants.isEmpty()) { return null } - return ConnectorHandle.Fn(ConnectorPath(cnf), SqlFn(name, variants)) + return ConnectorHandle.Fn(ConnectorPath(cnf), org.partiql.planner.internal.fn.sql.SqlFn(name, variants)) } @FnExperimental @@ -60,6 +60,6 @@ public open class SqlMetadata( if (variants.isEmpty()) { return null } - return ConnectorHandle.Agg(ConnectorPath(cnf), SqlAgg(name, variants)) + return ConnectorHandle.Agg(ConnectorPath(cnf), org.partiql.planner.internal.fn.sql.SqlAgg(name, variants)) } } diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggAny.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggAny.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggAny.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggAny.kt index ae232d4129..a9ab32fe54 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggAny.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggAny.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.builtins.internal.AccumulatorAnySome import org.partiql.spi.fn.Agg diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggAvg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggAvg.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggAvg.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggAvg.kt index 1287a7f011..6487fcd5aa 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggAvg.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggAvg.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.builtins.internal.AccumulatorAvg import org.partiql.spi.fn.Agg diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggCount.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggCount.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggCount.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggCount.kt index 63dc2be90c..163f751ef5 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggCount.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggCount.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.builtins.internal.AccumulatorCount import org.partiql.spi.fn.Agg diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggEvery.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggEvery.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggEvery.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggEvery.kt index 8420c15d8e..6094fa33eb 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggEvery.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggEvery.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.builtins.internal.AccumulatorEvery import org.partiql.spi.fn.Agg diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggGroupAs.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggGroupAs.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggGroupAs.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggGroupAs.kt index 5b586ee155..74d29d84b4 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggGroupAs.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggGroupAs.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.builtins.internal.AccumulatorGroupAs import org.partiql.spi.fn.Agg diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggMax.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggMax.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggMax.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggMax.kt index 71a094dc98..7875a17811 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggMax.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggMax.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.builtins.internal.AccumulatorMax import org.partiql.spi.fn.Agg diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggMin.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggMin.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggMin.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggMin.kt index 03b2f7d009..9b4a30cb49 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggMin.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggMin.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.builtins.internal.AccumulatorMin import org.partiql.spi.fn.Agg diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggSome.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggSome.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggSome.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggSome.kt index 1480c27a8f..62e76690f2 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggSome.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggSome.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.builtins.internal.AccumulatorAnySome import org.partiql.spi.fn.Agg diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggSum.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggSum.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggSum.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggSum.kt index 9fc312159e..b65ae29a70 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/AggSum.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggSum.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.builtins.internal.AccumulatorSum import org.partiql.spi.fn.Agg diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnAbs.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnAbs.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnAbs.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnAbs.kt index bfd4a054a0..984cd827d1 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnAbs.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnAbs.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnAnd.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnAnd.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnAnd.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnAnd.kt index f5c552cfe9..134328d5c5 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnAnd.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnAnd.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnBetween.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBetween.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnBetween.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBetween.kt index a60d7d6469..762ae4f01d 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnBetween.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBetween.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnBitLength.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBitLength.kt similarity index 97% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnBitLength.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBitLength.kt index 2f129af5b7..67f0783cb6 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnBitLength.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBitLength.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnBitwiseAnd.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBitwiseAnd.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnBitwiseAnd.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBitwiseAnd.kt index 33c5f5660c..cc70a36b2b 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnBitwiseAnd.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBitwiseAnd.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnCardinality.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCardinality.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnCardinality.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCardinality.kt index 93f9498a0b..367693790c 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnCardinality.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCardinality.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnCharLength.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCharLength.kt similarity index 97% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnCharLength.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCharLength.kt index e2c0b40003..137888db1c 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnCharLength.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCharLength.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnCollAgg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCollAgg.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnCollAgg.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCollAgg.kt index c480edb9ec..2ddcf13efb 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnCollAgg.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCollAgg.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.builtins.internal.Accumulator import org.partiql.spi.connector.sql.builtins.internal.AccumulatorAnySome diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnConcat.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnConcat.kt similarity index 97% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnConcat.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnConcat.kt index b4b18beee5..c670d758bb 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnConcat.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnConcat.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnCurrentDate.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCurrentDate.kt similarity index 93% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnCurrentDate.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCurrentDate.kt index b802665068..191d508172 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnCurrentDate.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCurrentDate.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnCurrentUser.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCurrentUser.kt similarity index 93% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnCurrentUser.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCurrentUser.kt index 94f427dbde..1aad0cba5b 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnCurrentUser.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCurrentUser.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddDay.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddDay.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddDay.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddDay.kt index 1f6c6cc08b..7d00a4bb30 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddDay.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddDay.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddHour.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddHour.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddHour.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddHour.kt index 72d59304cc..55198ae647 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddHour.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddHour.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddMinute.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddMinute.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddMinute.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddMinute.kt index b8c11b2910..e6ddf23bca 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddMinute.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddMinute.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddMonth.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddMonth.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddMonth.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddMonth.kt index c243dea3d1..c44a67eaeb 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddMonth.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddMonth.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddSecond.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddSecond.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddSecond.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddSecond.kt index 8d1715037d..cd56c9058f 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddSecond.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddSecond.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddYear.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddYear.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddYear.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddYear.kt index 3d34375e42..251d4f0a9d 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateAddYear.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddYear.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffDay.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffDay.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffDay.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffDay.kt index 8298d3ba9e..129dbce9db 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffDay.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffDay.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffHour.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffHour.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffHour.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffHour.kt index 28c838c62f..b6b85d47bb 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffHour.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffHour.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffMinute.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffMinute.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffMinute.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffMinute.kt index 49ddfdfa23..df56be84ea 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffMinute.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffMinute.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffMonth.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffMonth.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffMonth.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffMonth.kt index db8520d9eb..50d30fe7dc 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffMonth.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffMonth.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffSecond.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffSecond.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffSecond.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffSecond.kt index 2ba596c735..444d0911ca 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffSecond.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffSecond.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffYear.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffYear.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffYear.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffYear.kt index f308618330..8ab1d361bd 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDateDiffYear.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffYear.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDivide.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDivide.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDivide.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDivide.kt index 55a2188fe6..8abe84bf60 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnDivide.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDivide.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnEq.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnEq.kt similarity index 97% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnEq.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnEq.kt index 3febb655a6..aeedd74a83 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnEq.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnEq.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnExtract.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnExtract.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnExtract.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnExtract.kt index b1d723c675..7387e52409 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnExtract.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnExtract.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnGt.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnGt.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnGt.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnGt.kt index 983f19a7a6..501b51147c 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnGt.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnGt.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnGte.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnGte.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnGte.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnGte.kt index 3148b3d3da..e3de57f7ef 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnGte.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnGte.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnInCollection.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnInCollection.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnInCollection.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnInCollection.kt index 40452eb68b..03d94fdef4 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnInCollection.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnInCollection.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsAny.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsAny.kt similarity index 93% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsAny.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsAny.kt index ce632c819e..152ba74666 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsAny.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsAny.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsBag.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBag.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsBag.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBag.kt index d3260269a1..779295c1e5 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsBag.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBag.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsBinary.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBinary.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsBinary.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBinary.kt index 8f8e1e106e..5f602dff58 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsBinary.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBinary.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsBlob.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBlob.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsBlob.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBlob.kt index ae4dfbf1b1..0edf621340 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsBlob.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBlob.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsBool.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBool.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsBool.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBool.kt index c2074ced2a..83967c68f9 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsBool.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBool.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsByte.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsByte.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsByte.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsByte.kt index a6d6b7722c..78bf451b53 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsByte.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsByte.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsChar.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsChar.kt similarity index 97% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsChar.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsChar.kt index 9b1c812811..5c5644bece 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsChar.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsChar.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.errors.TypeCheckException import org.partiql.spi.fn.Fn diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsClob.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsClob.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsClob.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsClob.kt index 256e54f84f..6154a10545 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsClob.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsClob.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsDate.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDate.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsDate.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDate.kt index 903751f694..c2edd8d510 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsDate.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDate.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsDecimal.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDecimal.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsDecimal.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDecimal.kt index d639d3be9f..a1bca2470d 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsDecimal.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDecimal.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsDecimalArbitrary.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDecimalArbitrary.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsDecimalArbitrary.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDecimalArbitrary.kt index 547b0b1fbb..e9011c92c2 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsDecimalArbitrary.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDecimalArbitrary.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsFloat32.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsFloat32.kt similarity index 95% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsFloat32.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsFloat32.kt index 4dce429b7a..bc6b6e7b2b 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsFloat32.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsFloat32.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsFloat64.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsFloat64.kt similarity index 95% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsFloat64.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsFloat64.kt index 945ca5b622..d79f8baccc 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsFloat64.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsFloat64.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInt.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt.kt similarity index 95% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInt.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt.kt index 51fa4d7f20..db5f0a4e4a 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInt.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInt16.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt16.kt similarity index 97% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInt16.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt16.kt index 153e54f9a1..f733752ece 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInt16.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt16.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInt32.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt32.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInt32.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt32.kt index 996ff9f067..aafb185454 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInt32.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt32.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInt64.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt64.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInt64.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt64.kt index 838f1b55a1..431701b972 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInt64.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt64.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInt8.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt8.kt similarity index 97% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInt8.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt8.kt index f8d1a4285d..aa5c12ff6f 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInt8.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt8.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInterval.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInterval.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInterval.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInterval.kt index 95022392f5..6046d19f7a 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsInterval.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInterval.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsList.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsList.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsList.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsList.kt index 31fa7c2d33..02a45a1cdb 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsList.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsList.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsMissing.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsMissing.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsMissing.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsMissing.kt index e0d25570dd..93252f0e28 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsMissing.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsMissing.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsNull.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsNull.kt similarity index 95% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsNull.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsNull.kt index 671364bb3a..ca1ed7d677 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsNull.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsNull.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsSexp.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsSexp.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsSexp.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsSexp.kt index c96962c71d..c81773f651 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsSexp.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsSexp.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsString.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsString.kt similarity index 97% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsString.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsString.kt index 8470dbbdca..a4f8b45a88 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsString.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsString.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.errors.TypeCheckException import org.partiql.spi.fn.Fn diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsStruct.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsStruct.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsStruct.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsStruct.kt index 998bd2a123..6fe423073b 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsStruct.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsStruct.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsSymbol.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsSymbol.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsSymbol.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsSymbol.kt index 231e3dddaa..19595e81d6 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsSymbol.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsSymbol.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsTime.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsTime.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsTime.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsTime.kt index 7308e5b2f6..6f55ad88d7 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsTime.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsTime.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsTimestamp.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsTimestamp.kt similarity index 96% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsTimestamp.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsTimestamp.kt index 932d6667c5..11241f580c 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnIsTimestamp.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsTimestamp.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnLike.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLike.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnLike.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLike.kt index 3a73855a8e..4a570db264 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnLike.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLike.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.utils.PatternUtils.matchRegexPattern import org.partiql.spi.connector.sql.utils.PatternUtils.parsePattern diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnLikeEscape.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLikeEscape.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnLikeEscape.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLikeEscape.kt index 6c1a86e28e..0443b69dea 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnLikeEscape.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLikeEscape.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.errors.TypeCheckException import org.partiql.spi.connector.sql.utils.PatternUtils diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnLower.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLower.kt similarity index 97% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnLower.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLower.kt index c3ba2d4c01..c1de41e8ac 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnLower.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLower.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnLt.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLt.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnLt.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLt.kt index 688c33f03b..6761410205 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnLt.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLt.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnLte.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLte.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnLte.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLte.kt index 820e256643..a0d8da4e13 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnLte.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLte.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnMinus.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnMinus.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnMinus.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnMinus.kt index 4cfdc8dfb9..3432f42388 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnMinus.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnMinus.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnModulo.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnModulo.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnModulo.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnModulo.kt index 6a8bdb6965..3943ce63cb 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnModulo.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnModulo.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnNeg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnNeg.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnNeg.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnNeg.kt index 12f0593b5d..b59309bbc6 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnNeg.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnNeg.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnNot.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnNot.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnNot.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnNot.kt index 935857e927..086584d34f 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnNot.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnNot.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnOctetLength.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnOctetLength.kt similarity index 97% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnOctetLength.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnOctetLength.kt index 75d7953806..7c2385e84a 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnOctetLength.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnOctetLength.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnOr.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnOr.kt similarity index 95% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnOr.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnOr.kt index 4444d08bcf..cd6436f2e7 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnOr.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnOr.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnPlus.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPlus.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnPlus.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPlus.kt index 45666ce7aa..1e9aaec61e 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnPlus.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPlus.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnPos.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPos.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnPos.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPos.kt index 30ce1187cb..71516d09d7 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnPos.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPos.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnPosition.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPosition.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnPosition.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPosition.kt index 0f6b457254..61d8ce101b 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnPosition.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPosition.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.utils.StringUtils.codepointPosition import org.partiql.spi.fn.Fn diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnSubstring.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnSubstring.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnSubstring.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnSubstring.kt index 92c1566626..b931864dc7 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnSubstring.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnSubstring.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTimes.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTimes.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTimes.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTimes.kt index a4ea9882b6..a049a3bfa3 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTimes.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTimes.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrim.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrim.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrim.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrim.kt index e9d7b230d6..dddc89dc74 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrim.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrim.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.utils.StringUtils.codepointTrim import org.partiql.spi.fn.Fn diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrimChars.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimChars.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrimChars.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimChars.kt index a355fcfde2..cc4da9d8e0 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrimChars.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimChars.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.utils.StringUtils.codepointTrim import org.partiql.spi.fn.Fn diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrimLeading.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimLeading.kt similarity index 97% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrimLeading.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimLeading.kt index ddf8fecbeb..d6083b06af 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrimLeading.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimLeading.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.utils.StringUtils.codepointTrimLeading import org.partiql.spi.fn.Fn diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrimLeadingChars.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimLeadingChars.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrimLeadingChars.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimLeadingChars.kt index 605d7164fe..ec8f340b2f 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrimLeadingChars.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimLeadingChars.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.utils.StringUtils.codepointTrimLeading import org.partiql.spi.fn.Fn diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrimTrailing.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimTrailing.kt similarity index 97% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrimTrailing.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimTrailing.kt index c0e24bdf0f..1bc5119727 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrimTrailing.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimTrailing.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.utils.StringUtils.codepointTrimTrailing import org.partiql.spi.fn.Fn diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrimTrailingChars.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimTrailingChars.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrimTrailingChars.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimTrailingChars.kt index 05a4fa8cf6..27ce82ef80 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnTrimTrailingChars.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimTrailingChars.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.connector.sql.utils.StringUtils.codepointTrimTrailing import org.partiql.spi.fn.Fn diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnUpper.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnUpper.kt similarity index 97% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnUpper.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnUpper.kt index cc4a0341dd..06519f2f9e 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnUpper.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnUpper.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnUtcnow.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnUtcnow.kt similarity index 94% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnUtcnow.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnUtcnow.kt index db149597c4..f44d613ea0 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/FnUtcnow.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnUtcnow.kt @@ -1,7 +1,7 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.spi.connector.sql.builtins +package org.partiql.planner.internal.fn.sql.builtins import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/Accumulator.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/Accumulator.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/Accumulator.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/Accumulator.kt index 8cfec2bca3..3c9eeb8894 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/Accumulator.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/Accumulator.kt @@ -14,7 +14,7 @@ @file:OptIn(PartiQLValueExperimental::class) -package org.partiql.spi.connector.sql.builtins.internal +package org.partiql.planner.internal.fn.sql.builtins.internal import com.amazon.ion.Decimal import org.partiql.errors.TypeCheckException diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorAnySome.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorAnySome.kt similarity index 89% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorAnySome.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorAnySome.kt index fa82aa7d14..ddfb1342e0 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorAnySome.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorAnySome.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.builtins.internal +package org.partiql.planner.internal.fn.sql.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorAvg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorAvg.kt similarity index 91% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorAvg.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorAvg.kt index 2704075938..ed3f8237f9 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorAvg.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorAvg.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.builtins.internal +package org.partiql.planner.internal.fn.sql.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorCount.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorCount.kt similarity index 86% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorCount.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorCount.kt index ec4d926b24..c83ec70ae8 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorCount.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorCount.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.builtins.internal +package org.partiql.planner.internal.fn.sql.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorCountStar.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorCountStar.kt similarity index 88% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorCountStar.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorCountStar.kt index 82768fdb1b..a2113209bf 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorCountStar.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorCountStar.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.builtins.internal +package org.partiql.planner.internal.fn.sql.builtins.internal import org.partiql.spi.fn.Agg import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorEvery.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorEvery.kt similarity index 90% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorEvery.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorEvery.kt index 900fc8238f..3d2dc26590 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorEvery.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorEvery.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.builtins.internal +package org.partiql.planner.internal.fn.sql.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorGroupAs.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorGroupAs.kt similarity index 86% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorGroupAs.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorGroupAs.kt index 30d1b88778..e1d9a4b877 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorGroupAs.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorGroupAs.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.builtins.internal +package org.partiql.planner.internal.fn.sql.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorMax.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorMax.kt similarity index 88% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorMax.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorMax.kt index dfce376ed2..91a3d0c5d1 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorMax.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorMax.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.builtins.internal +package org.partiql.planner.internal.fn.sql.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorMin.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorMin.kt similarity index 87% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorMin.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorMin.kt index 75c0972289..eb9ac373a1 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorMin.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorMin.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.builtins.internal +package org.partiql.planner.internal.fn.sql.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorSum.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorSum.kt similarity index 92% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorSum.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorSum.kt index a9405d9e4e..4da993379a 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/builtins/internal/AccumulatorSum.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorSum.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.builtins.internal +package org.partiql.planner.internal.fn.sql.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/exts/FnExists.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/exts/FnExists.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/exts/FnExists.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/exts/FnExists.kt index 6d13fcd80e..43fe1084d5 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/exts/FnExists.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/exts/FnExists.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.exts +package org.partiql.planner.internal.fn.sql.exts import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/exts/FnSize.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/exts/FnSize.kt similarity index 98% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/exts/FnSize.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/exts/FnSize.kt index 368d5d98cd..36b30d1f93 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/exts/FnSize.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/exts/FnSize.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.exts +package org.partiql.planner.internal.fn.sql.exts import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/info/InfoSchema.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoSchema.kt similarity index 69% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/info/InfoSchema.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoSchema.kt index 4244dffc61..44d45ebd00 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/info/InfoSchema.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoSchema.kt @@ -1,7 +1,7 @@ -package org.partiql.spi.connector.sql.info +package org.partiql.planner.internal.fn.sql.info -import org.partiql.spi.connector.sql.PartiQLExts -import org.partiql.spi.connector.sql.SqlBuiltins +import org.partiql.planner.internal.fn.sql.PartiQLExts +import org.partiql.planner.internal.fn.sql.SqlBuiltins import org.partiql.spi.fn.Agg import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental @@ -32,10 +32,10 @@ public class InfoSchema @OptIn(FnExperimental::class) constructor( @JvmStatic public fun default(): InfoSchema { val functions = Index.fnBuilder() - .addAll(SqlBuiltins.builtins) + .addAll(org.partiql.planner.internal.fn.sql.SqlBuiltins.builtins) .build() val aggregations = Index.aggBuilder() - .addAll(SqlBuiltins.aggregations) + .addAll(org.partiql.planner.internal.fn.sql.SqlBuiltins.aggregations) .build() return InfoSchema(functions, aggregations) } @@ -43,10 +43,10 @@ public class InfoSchema @OptIn(FnExperimental::class) constructor( @OptIn(FnExperimental::class) public fun ext(): InfoSchema { val functions = Index.fnBuilder() - .addAll(SqlBuiltins.builtins + PartiQLExts.builtins) + .addAll(org.partiql.planner.internal.fn.sql.SqlBuiltins.builtins + org.partiql.planner.internal.fn.sql.PartiQLExts.builtins) .build() val aggregations = Index.aggBuilder() - .addAll(SqlBuiltins.aggregations) + .addAll(org.partiql.planner.internal.fn.sql.SqlBuiltins.aggregations) .build() return InfoSchema(functions, aggregations) } diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/info/InfoView.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoView.kt similarity index 87% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/info/InfoView.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoView.kt index c1d2b2991e..98a0e4343c 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/info/InfoView.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoView.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.info +package org.partiql.planner.internal.fn.sql.info import org.partiql.types.StaticType import org.partiql.value.PartiQLValue diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/info/InfoViewRoutines.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoViewRoutines.kt similarity index 95% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/info/InfoViewRoutines.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoViewRoutines.kt index 157c3ab556..238f82aba3 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/info/InfoViewRoutines.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoViewRoutines.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.info +package org.partiql.planner.internal.fn.sql.info import org.partiql.spi.fn.Fn import org.partiql.spi.fn.FnExperimental diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/utils/PatternUtils.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/utils/PatternUtils.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/utils/PatternUtils.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/utils/PatternUtils.kt index 82ab8642b5..5366639263 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/utils/PatternUtils.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/utils/PatternUtils.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.utils +package org.partiql.planner.internal.fn.sql.utils import org.partiql.spi.connector.sql.utils.StringUtils.codePointSequence import java.util.regex.Pattern diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/utils/StringUtils.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/utils/StringUtils.kt similarity index 99% rename from partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/utils/StringUtils.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/utils/StringUtils.kt index 08ad56a7e2..f45f7ecd05 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/sql/utils/StringUtils.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/utils/StringUtils.kt @@ -1,4 +1,4 @@ -package org.partiql.spi.connector.sql.utils +package org.partiql.planner.internal.fn.sql.utils internal object StringUtils { diff --git a/partiql-spi/api/partiql-spi.api b/partiql-spi/api/partiql-spi.api index c99f5ac93d..217702a940 100644 --- a/partiql-spi/api/partiql-spi.api +++ b/partiql-spi/api/partiql-spi.api @@ -35,9 +35,7 @@ public abstract interface class org/partiql/spi/Plugin { } public abstract interface class org/partiql/spi/connector/Connector { - public abstract fun getAggregations ()Lorg/partiql/spi/connector/ConnectorAggProvider; public abstract fun getBindings ()Lorg/partiql/spi/connector/ConnectorBindings; - public abstract fun getFunctions ()Lorg/partiql/spi/connector/ConnectorFnProvider; public abstract fun getMetadata (Lorg/partiql/spi/connector/ConnectorSession;)Lorg/partiql/spi/connector/ConnectorMetadata; } @@ -50,59 +48,15 @@ public final class org/partiql/spi/connector/Connector$Factory$DefaultImpls { public static synthetic fun create$default (Lorg/partiql/spi/connector/Connector$Factory;Ljava/lang/String;Lcom/amazon/ionelement/api/StructElement;ILjava/lang/Object;)Lorg/partiql/spi/connector/Connector; } -public abstract interface class org/partiql/spi/connector/ConnectorAgg { - public abstract fun getVariants ()Ljava/util/List; -} - -public abstract interface class org/partiql/spi/connector/ConnectorAggProvider { - public abstract fun getAgg (Lorg/partiql/spi/connector/ConnectorPath;Ljava/lang/String;)Lorg/partiql/spi/fn/Agg; -} - public abstract interface class org/partiql/spi/connector/ConnectorBindings { public abstract fun getValue (Lorg/partiql/spi/connector/ConnectorPath;)Lorg/partiql/value/PartiQLValue; } -public abstract interface class org/partiql/spi/connector/ConnectorFn { - public abstract fun getVariants ()Ljava/util/List; -} - -public abstract interface class org/partiql/spi/connector/ConnectorFnProvider { - public abstract fun getFn (Lorg/partiql/spi/connector/ConnectorPath;Ljava/lang/String;)Lorg/partiql/spi/fn/Fn; -} - public abstract class org/partiql/spi/connector/ConnectorHandle { public abstract fun getEntity ()Ljava/lang/Object; public abstract fun getPath ()Lorg/partiql/spi/connector/ConnectorPath; } -public final class org/partiql/spi/connector/ConnectorHandle$Agg : org/partiql/spi/connector/ConnectorHandle { - public fun (Lorg/partiql/spi/connector/ConnectorPath;Lorg/partiql/spi/connector/ConnectorAgg;)V - public final fun component1 ()Lorg/partiql/spi/connector/ConnectorPath; - public final fun component2 ()Lorg/partiql/spi/connector/ConnectorAgg; - public final fun copy (Lorg/partiql/spi/connector/ConnectorPath;Lorg/partiql/spi/connector/ConnectorAgg;)Lorg/partiql/spi/connector/ConnectorHandle$Agg; - public static synthetic fun copy$default (Lorg/partiql/spi/connector/ConnectorHandle$Agg;Lorg/partiql/spi/connector/ConnectorPath;Lorg/partiql/spi/connector/ConnectorAgg;ILjava/lang/Object;)Lorg/partiql/spi/connector/ConnectorHandle$Agg; - public fun equals (Ljava/lang/Object;)Z - public synthetic fun getEntity ()Ljava/lang/Object; - public fun getEntity ()Lorg/partiql/spi/connector/ConnectorAgg; - public fun getPath ()Lorg/partiql/spi/connector/ConnectorPath; - public fun hashCode ()I - public fun toString ()Ljava/lang/String; -} - -public final class org/partiql/spi/connector/ConnectorHandle$Fn : org/partiql/spi/connector/ConnectorHandle { - public fun (Lorg/partiql/spi/connector/ConnectorPath;Lorg/partiql/spi/connector/ConnectorFn;)V - public final fun component1 ()Lorg/partiql/spi/connector/ConnectorPath; - public final fun component2 ()Lorg/partiql/spi/connector/ConnectorFn; - public final fun copy (Lorg/partiql/spi/connector/ConnectorPath;Lorg/partiql/spi/connector/ConnectorFn;)Lorg/partiql/spi/connector/ConnectorHandle$Fn; - public static synthetic fun copy$default (Lorg/partiql/spi/connector/ConnectorHandle$Fn;Lorg/partiql/spi/connector/ConnectorPath;Lorg/partiql/spi/connector/ConnectorFn;ILjava/lang/Object;)Lorg/partiql/spi/connector/ConnectorHandle$Fn; - public fun equals (Ljava/lang/Object;)Z - public synthetic fun getEntity ()Ljava/lang/Object; - public fun getEntity ()Lorg/partiql/spi/connector/ConnectorFn; - public fun getPath ()Lorg/partiql/spi/connector/ConnectorPath; - public fun hashCode ()I - public fun toString ()Ljava/lang/String; -} - public final class org/partiql/spi/connector/ConnectorHandle$Obj : org/partiql/spi/connector/ConnectorHandle { public fun (Lorg/partiql/spi/connector/ConnectorPath;Lorg/partiql/spi/connector/ConnectorObject;)V public final fun component1 ()Lorg/partiql/spi/connector/ConnectorPath; @@ -118,8 +72,6 @@ public final class org/partiql/spi/connector/ConnectorHandle$Obj : org/partiql/s } public abstract interface class org/partiql/spi/connector/ConnectorMetadata { - public abstract fun getAggregation (Lorg/partiql/spi/BindingPath;)Lorg/partiql/spi/connector/ConnectorHandle$Agg; - public abstract fun getFunction (Lorg/partiql/spi/BindingPath;)Lorg/partiql/spi/connector/ConnectorHandle$Fn; public abstract fun getObject (Lorg/partiql/spi/BindingPath;)Lorg/partiql/spi/connector/ConnectorHandle$Obj; } @@ -163,438 +115,3 @@ public final class org/partiql/spi/connector/Constants { public static final field INSTANCE Lorg/partiql/spi/connector/Constants; } -public final class org/partiql/spi/connector/sql/SqlAgg : org/partiql/spi/connector/ConnectorAgg { - public fun (Ljava/lang/String;Ljava/util/List;)V - public fun getVariants ()Ljava/util/List; -} - -public final class org/partiql/spi/connector/sql/SqlAggProvider : org/partiql/spi/connector/ConnectorAggProvider { - public fun (Lorg/partiql/spi/fn/Index;)V - public fun getAgg (Lorg/partiql/spi/connector/ConnectorPath;Ljava/lang/String;)Lorg/partiql/spi/fn/Agg; -} - -public final class org/partiql/spi/connector/sql/SqlBindings : org/partiql/spi/connector/ConnectorBindings { - public fun (Lorg/partiql/spi/connector/sql/info/InfoSchema;)V - public fun getValue (Lorg/partiql/spi/connector/ConnectorPath;)Lorg/partiql/value/PartiQLValue; -} - -public abstract class org/partiql/spi/connector/sql/SqlConnector : org/partiql/spi/connector/Connector { - public fun ()V - public fun getAggregations ()Lorg/partiql/spi/connector/ConnectorAggProvider; - public fun getBindings ()Lorg/partiql/spi/connector/ConnectorBindings; - public fun getFunctions ()Lorg/partiql/spi/connector/ConnectorFnProvider; - public fun getInfo ()Lorg/partiql/spi/connector/sql/info/InfoSchema; - public abstract fun getMetadata (Lorg/partiql/spi/connector/ConnectorSession;)Lorg/partiql/spi/connector/sql/SqlMetadata; -} - -public final class org/partiql/spi/connector/sql/SqlFn : org/partiql/spi/connector/ConnectorFn { - public fun (Ljava/lang/String;Ljava/util/List;)V - public fun getVariants ()Ljava/util/List; -} - -public final class org/partiql/spi/connector/sql/SqlFnProvider : org/partiql/spi/connector/ConnectorFnProvider { - public fun (Lorg/partiql/spi/fn/Index;)V - public fun getFn (Lorg/partiql/spi/connector/ConnectorPath;Ljava/lang/String;)Lorg/partiql/spi/fn/Fn; -} - -public class org/partiql/spi/connector/sql/SqlMetadata : org/partiql/spi/connector/ConnectorMetadata { - public fun (Lorg/partiql/spi/connector/ConnectorSession;Lorg/partiql/spi/connector/sql/info/InfoSchema;)V - public fun getAggregation (Lorg/partiql/spi/BindingPath;)Lorg/partiql/spi/connector/ConnectorHandle$Agg; - public fun getFunction (Lorg/partiql/spi/BindingPath;)Lorg/partiql/spi/connector/ConnectorHandle$Fn; - public fun getObject (Lorg/partiql/spi/BindingPath;)Lorg/partiql/spi/connector/ConnectorHandle$Obj; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_ANY__ANY__BOOL : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_ANY__ANY__BOOL; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_ANY__BOOL__BOOL : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_ANY__BOOL__BOOL; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_AVG__ANY__ANY : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_AVG__ANY__ANY; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_AVG__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_AVG__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_AVG__FLOAT32__FLOAT32 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_AVG__FLOAT32__FLOAT32; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_AVG__FLOAT64__FLOAT64 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_AVG__FLOAT64__FLOAT64; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_AVG__INT16__INT16 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_AVG__INT16__INT16; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_AVG__INT32__INT32 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_AVG__INT32__INT32; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_AVG__INT64__INT64 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_AVG__INT64__INT64; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_AVG__INT8__INT8 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_AVG__INT8__INT8; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_AVG__INT__INT : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_AVG__INT__INT; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_COUNT__ANY__INT64 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_COUNT__ANY__INT64; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_EVERY__ANY__BOOL : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_EVERY__ANY__BOOL; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_EVERY__BOOL__BOOL : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_EVERY__BOOL__BOOL; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_GROUP_AS__ANY__ANY : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_GROUP_AS__ANY__ANY; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MAX__ANY__ANY : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MAX__ANY__ANY; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MAX__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MAX__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MAX__FLOAT32__FLOAT32 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MAX__FLOAT32__FLOAT32; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MAX__FLOAT64__FLOAT64 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MAX__FLOAT64__FLOAT64; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MAX__INT16__INT16 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MAX__INT16__INT16; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MAX__INT32__INT32 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MAX__INT32__INT32; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MAX__INT64__INT64 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MAX__INT64__INT64; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MAX__INT8__INT8 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MAX__INT8__INT8; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MAX__INT__INT : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MAX__INT__INT; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MIN__ANY__ANY : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MIN__ANY__ANY; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MIN__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MIN__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MIN__FLOAT32__FLOAT32 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MIN__FLOAT32__FLOAT32; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MIN__FLOAT64__FLOAT64 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MIN__FLOAT64__FLOAT64; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MIN__INT16__INT16 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MIN__INT16__INT16; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MIN__INT32__INT32 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MIN__INT32__INT32; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MIN__INT64__INT64 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MIN__INT64__INT64; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MIN__INT8__INT8 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MIN__INT8__INT8; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_MIN__INT__INT : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_MIN__INT__INT; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_SOME__ANY__BOOL : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_SOME__ANY__BOOL; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_SOME__BOOL__BOOL : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_SOME__BOOL__BOOL; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_SUM__ANY__ANY : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_SUM__ANY__ANY; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_SUM__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_SUM__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_SUM__FLOAT32__FLOAT32 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_SUM__FLOAT32__FLOAT32; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_SUM__FLOAT64__FLOAT64 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_SUM__FLOAT64__FLOAT64; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_SUM__INT16__INT16 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_SUM__INT16__INT16; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_SUM__INT32__INT32 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_SUM__INT32__INT32; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_SUM__INT64__INT64 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_SUM__INT64__INT64; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_SUM__INT8__INT8 : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_SUM__INT8__INT8; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/builtins/Agg_SUM__INT__INT : org/partiql/spi/fn/Agg { - public static final field INSTANCE Lorg/partiql/spi/connector/sql/builtins/Agg_SUM__INT__INT; - public fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public final class org/partiql/spi/connector/sql/info/InfoSchema { - public static final field Companion Lorg/partiql/spi/connector/sql/info/InfoSchema$Companion; - public fun (Lorg/partiql/spi/fn/Index;Lorg/partiql/spi/fn/Index;)V - public static final fun default ()Lorg/partiql/spi/connector/sql/info/InfoSchema; - public final fun get (Ljava/lang/String;)Lorg/partiql/spi/connector/sql/info/InfoView; - public final fun getAggregations ()Lorg/partiql/spi/fn/Index; - public final fun getFunctions ()Lorg/partiql/spi/fn/Index; -} - -public final class org/partiql/spi/connector/sql/info/InfoSchema$Companion { - public final fun default ()Lorg/partiql/spi/connector/sql/info/InfoSchema; - public final fun ext ()Lorg/partiql/spi/connector/sql/info/InfoSchema; -} - -public abstract interface class org/partiql/spi/connector/sql/info/InfoView { - public abstract fun getSchema ()Lorg/partiql/types/StaticType; - public abstract fun value ()Lorg/partiql/value/PartiQLValue; -} - -public abstract interface class org/partiql/spi/fn/Agg { - public abstract fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; - public abstract fun getSignature ()Lorg/partiql/spi/fn/AggSignature; -} - -public abstract interface class org/partiql/spi/fn/Agg$Accumulator { - public abstract fun next ([Lorg/partiql/value/PartiQLValue;)V - public abstract fun value ()Lorg/partiql/value/PartiQLValue; -} - -public final class org/partiql/spi/fn/AggSignature { - public final field description Ljava/lang/String; - public final field isDecomposable Z - public final field isNullable Z - public final field name Ljava/lang/String; - public final field parameters Ljava/util/List; - public final field returns Lorg/partiql/types/PType; - public fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZ)V - public synthetic fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZILkotlin/jvm/internal/DefaultConstructorMarker;)V - public fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZ)V - public synthetic fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZILkotlin/jvm/internal/DefaultConstructorMarker;)V - public fun equals (Ljava/lang/Object;)Z - public final fun getSpecific ()Ljava/lang/String; - public fun hashCode ()I - public fun toString ()Ljava/lang/String; -} - -public abstract interface class org/partiql/spi/fn/Fn { - public abstract fun getSignature ()Lorg/partiql/spi/fn/FnSignature; - public abstract fun invoke ([Lorg/partiql/value/PartiQLValue;)Lorg/partiql/value/PartiQLValue; -} - -public abstract interface annotation class org/partiql/spi/fn/FnExperimental : java/lang/annotation/Annotation { -} - -public final class org/partiql/spi/fn/FnParameter { - public fun (Ljava/lang/String;Lorg/partiql/types/PType;)V - public fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;)V - public final fun component1 ()Ljava/lang/String; - public final fun component2 ()Lorg/partiql/types/PType; - public final fun copy (Ljava/lang/String;Lorg/partiql/types/PType;)Lorg/partiql/spi/fn/FnParameter; - public static synthetic fun copy$default (Lorg/partiql/spi/fn/FnParameter;Ljava/lang/String;Lorg/partiql/types/PType;ILjava/lang/Object;)Lorg/partiql/spi/fn/FnParameter; - public fun equals (Ljava/lang/Object;)Z - public final fun getName ()Ljava/lang/String; - public final fun getType ()Lorg/partiql/types/PType; - public fun hashCode ()I - public fun toString ()Ljava/lang/String; -} - -public final class org/partiql/spi/fn/FnSignature { - public final field description Ljava/lang/String; - public final field isDeterministic Z - public final field isMissable Z - public final field isMissingCall Z - public final field isNullCall Z - public final field isNullable Z - public final field name Ljava/lang/String; - public final field parameters Ljava/util/List; - public final field returns Lorg/partiql/types/PType; - public fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZ)V - public synthetic fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZILkotlin/jvm/internal/DefaultConstructorMarker;)V - public fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZZZZ)V - public synthetic fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZZZZILkotlin/jvm/internal/DefaultConstructorMarker;)V - public final fun component1 ()Ljava/lang/String; - public final fun component2 ()Lorg/partiql/types/PType; - public final fun component3 ()Ljava/util/List; - public final fun component4 ()Ljava/lang/String; - public final fun component5 ()Z - public final fun component6 ()Z - public final fun component7 ()Z - public final fun component8 ()Z - public final fun component9 ()Z - public final fun copy (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZ)Lorg/partiql/spi/fn/FnSignature; - public static synthetic fun copy$default (Lorg/partiql/spi/fn/FnSignature;Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZILjava/lang/Object;)Lorg/partiql/spi/fn/FnSignature; - public fun equals (Ljava/lang/Object;)Z - public final fun getSpecific ()Ljava/lang/String; - public fun hashCode ()I - public final fun sql ()Ljava/lang/String; - public fun toString ()Ljava/lang/String; -} - -public abstract interface class org/partiql/spi/fn/Index { - public static final field Companion Lorg/partiql/spi/fn/Index$Companion; - public static fun aggBuilder ()Lorg/partiql/spi/fn/Index$Builder; - public static fun fnBuilder ()Lorg/partiql/spi/fn/Index$Builder; - public abstract fun get (Ljava/util/List;)Ljava/util/List; - public abstract fun get (Lorg/partiql/spi/connector/ConnectorPath;Ljava/lang/String;)Ljava/lang/Object; -} - -public abstract class org/partiql/spi/fn/Index$Builder { - public fun ()V - public final fun add (Ljava/lang/Object;)Lorg/partiql/spi/fn/Index$Builder; - public final fun addAll (Ljava/util/List;)Lorg/partiql/spi/fn/Index$Builder; - public abstract fun build ()Lorg/partiql/spi/fn/Index; -} - -public final class org/partiql/spi/fn/Index$Builder$Agg : org/partiql/spi/fn/Index$Builder { - public fun ()V - public fun build ()Lorg/partiql/spi/fn/Index; -} - -public final class org/partiql/spi/fn/Index$Builder$Fn : org/partiql/spi/fn/Index$Builder { - public fun ()V - public fun build ()Lorg/partiql/spi/fn/Index; -} - -public final class org/partiql/spi/fn/Index$Companion { - public final fun aggBuilder ()Lorg/partiql/spi/fn/Index$Builder; - public final fun fnBuilder ()Lorg/partiql/spi/fn/Index$Builder; -} - diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/Connector.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/connector/Connector.kt index 5726996dc2..ee1715bdfa 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/Connector.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/connector/Connector.kt @@ -15,7 +15,6 @@ package org.partiql.spi.connector import com.amazon.ionelement.api.StructElement -import org.partiql.spi.fn.FnExperimental /** * A [Connector] is used by the PartiQL compiler and engine to implement a catalog. @@ -39,22 +38,6 @@ public interface Connector { */ public fun getBindings(): ConnectorBindings - /** - * Returns a [ConnectorFnProvider] which the engine uses to load function implementations. - * - * @return - */ - @FnExperimental - public fun getFunctions(): ConnectorFnProvider - - /** - * Returns a [ConnectorAggProvider] which the engine uses to load aggregation function implementations. - * - * @return - */ - @FnExperimental - public fun getAggregations(): ConnectorAggProvider - /** * A Plugin leverages a [Factory] to produce a [Connector] which is used for catalog metadata and data access. */ diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorAgg.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorAgg.kt deleted file mode 100644 index 2bad2ec44f..0000000000 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorAgg.kt +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright Amazon.com, Inc. or its affiliates. All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"). - * You may not use this file except in compliance with the License. - * A copy of the License is located at: - * - * http://aws.amazon.com/apache2.0/ - * - * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific - * language governing permissions and limitations under the License. - */ - -package org.partiql.spi.connector - -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental - -@OptIn(FnExperimental::class) -public interface ConnectorAgg { - - /** - * Returns a function's variants. - * - * @return - */ - public fun getVariants(): List -} diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorAggProvider.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorAggProvider.kt deleted file mode 100644 index f496275e20..0000000000 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorAggProvider.kt +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Copyright Amazon.com, Inc. or its affiliates. All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"). - * You may not use this file except in compliance with the License. - * A copy of the License is located at: - * - * http://aws.amazon.com/apache2.0/ - * - * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific - * language governing permissions and limitations under the License. - */ - -package org.partiql.spi.connector - -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.FnExperimental - -/** - * A [ConnectorAggProvider] implementation is responsible for providing an aggregation function implementation given a handle. - */ -@FnExperimental -public interface ConnectorAggProvider { - public fun getAgg(path: ConnectorPath, specific: String): Agg? -} diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorFn.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorFn.kt deleted file mode 100644 index acb8c81094..0000000000 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorFn.kt +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright Amazon.com, Inc. or its affiliates. All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"). - * You may not use this file except in compliance with the License. - * A copy of the License is located at: - * - * http://aws.amazon.com/apache2.0/ - * - * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific - * language governing permissions and limitations under the License. - */ - -package org.partiql.spi.connector - -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnSignature - -@OptIn(FnExperimental::class) -public interface ConnectorFn { - - /** - * Returns a function's variants. - * - * @return - */ - public fun getVariants(): List -} diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorFnProvider.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorFnProvider.kt deleted file mode 100644 index e28a22c116..0000000000 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorFnProvider.kt +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright Amazon.com, Inc. or its affiliates. All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"). - * You may not use this file except in compliance with the License. - * A copy of the License is located at: - * - * http://aws.amazon.com/apache2.0/ - * - * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific - * language governing permissions and limitations under the License. - */ - -package org.partiql.spi.connector - -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental - -/** - * A [ConnectorFnProvider] implementation is responsible for providing a function implementation given a handle. - */ -@FnExperimental -public interface ConnectorFnProvider { - - public fun getFn(path: ConnectorPath, specific: String): Fn? -} diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorHandle.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorHandle.kt index e4624278b0..cac161491c 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorHandle.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorHandle.kt @@ -33,14 +33,4 @@ public sealed class ConnectorHandle { override val path: ConnectorPath, override val entity: ConnectorObject, ) : ConnectorHandle() - - public data class Fn( - override val path: ConnectorPath, - override val entity: ConnectorFn, - ) : ConnectorHandle() - - public data class Agg( - override val path: ConnectorPath, - override val entity: ConnectorAgg, - ) : ConnectorHandle() } diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorMetadata.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorMetadata.kt index 3b447afb9d..95263166ea 100644 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorMetadata.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/connector/ConnectorMetadata.kt @@ -15,7 +15,6 @@ package org.partiql.spi.connector import org.partiql.spi.BindingPath -import org.partiql.spi.fn.FnExperimental /** * Aids in retrieving relevant Catalog metadata for the purpose of planning and execution. @@ -37,22 +36,4 @@ public interface ConnectorMetadata { * If the [path] does not correspond to an existing [ConnectorObject], implementers should return null. */ public fun getObject(path: BindingPath): ConnectorHandle.Obj? - - /** - * Returns all function signatures matching the given path. - * - * @param path - * @return - */ - @FnExperimental - public fun getFunction(path: BindingPath): ConnectorHandle.Fn? - - /** - * Returns all aggregation function signatures matching the given name. - * - * @param path - * @return - */ - @FnExperimental - public fun getAggregation(path: BindingPath): ConnectorHandle.Agg? } diff --git a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnExperimental.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnExperimental.kt deleted file mode 100644 index 711c0d6e86..0000000000 --- a/partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnExperimental.kt +++ /dev/null @@ -1,7 +0,0 @@ -package org.partiql.spi.fn - -@RequiresOptIn( - message = "PartiQLFunction requires explicit opt-in", - level = RequiresOptIn.Level.ERROR, -) -public annotation class FnExperimental diff --git a/partiql-spi/src/test/kotlin/org/partiql/spi/connector/sql/HeaderCodeGen.kt b/partiql-spi/src/test/kotlin/org/partiql/spi/connector/sql/HeaderCodeGen.kt deleted file mode 100644 index 8326b19289..0000000000 --- a/partiql-spi/src/test/kotlin/org/partiql/spi/connector/sql/HeaderCodeGen.kt +++ /dev/null @@ -1,188 +0,0 @@ -package org.partiql.spi.connector.sql - -import net.pearx.kasechange.toPascalCase -import org.junit.jupiter.api.Disabled -import org.junit.jupiter.api.Test -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnSignature -import org.partiql.value.PartiQLValueExperimental -import java.io.File - -const val imports = """ -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnScalar -import org.partiql.spi.fn.FnSignature -import org.partiql.value.PartiQLValueExperimental -import org.partiql.value.* -import org.partiql.value.PartiQLValueType.* -""" - -/** - * 0 -> Pascal case name - * 1 —> Snake case name - * 2 —> Return Type - * 3 —> Parameter list as string - * 4 —> isNullCall - * 5 -> isNullable - * 6 —> Snake case name - */ -const val TEMPLATE_SCALAR = """ -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -internal object %s : FnScalar { - - override val signature = FnSignature( - name = "%s", - returns = %s, - parameters = listOf(%s), - isNullCall = %b, - isNullable = %b, - ) - - override fun invoke(args: Array): PartiQLValue { - TODO("Function %s not implemented") - } -} -""" - -/** - * 0 -> Pascal case name - * 1 —> Snake case name - * 2 —> Return Type - * 3 —> Parameter list as string - * 4 -> isNullable - * 5 —> isDecomposable - * 6 —> Snake case name - */ -const val TEMPLATE_AGG = """ -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -internal object %s : Agg { - - override val signature = AggSignature( - name = "%s", - returns = %s, - parameters = listOf(%s), - isNullable = %b, - isDecomposable = %b - ) - - override fun accumulator(): Agg.Accumulator { - TODO("Aggregation %s not implemented") - } -} -""" - -@Disabled -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -class HeaderCodeGen { - - @Test - fun scalars() { - generateFns("package org.partiql.spi.connector.sql.internal.builtins", TEMPLATE_SCALAR, "Fn", SqlHeader.fns) - } - - @Test - fun aggregations() { - generateAggs("package org.partiql.spi.connector.sql.internal.builtins", TEMPLATE_AGG, "Agg", SqlHeader.aggs) - } - - /** - * Writes function implementation to file, prints list of classes - */ - private fun generateFns( - packageName: String, - template: String, - prefix: String, - signatures: List, - ) { - val clazzes = mutableListOf() - val funcs = signatures.groupBy { it.name } - val pathToDir = "./src/main/kotlin/org/partiql/spi/connector/sql/builtins" - for ((name, fns) in funcs) { - val pre = "${prefix}_$name".toPascalCase() - val file = File("$pathToDir/$pre.kt") - file.printWriter().use { - it.appendLine("// ktlint-disable filename") - it.appendLine("@file:Suppress(\"ClassName\")") - it.appendLine() - it.appendLine(packageName) - it.appendLine() - it.appendLine(imports) - it.appendLine() - fns.forEach { sig -> - val clazz = "${prefix}_${sig.specific}" - val params = toParams(clazz, sig) - val code = String.format(template, *params) - it.appendLine(code) - it.appendLine() - clazzes.add(clazz) - } - } - } - println("-- GENERATED") - println("listOf(${clazzes.joinToString()})") - println() - } - - /** - * Writes function implementation to file, prints list of classes - */ - private fun generateAggs( - packageName: String, - template: String, - prefix: String, - signatures: List, - ) { - val clazzes = mutableListOf() - val funcs = signatures.groupBy { it.name } - val pathToDir = "./src/main/kotlin/org/partiql/spi/connector/sql/builtins" - for ((name, fns) in funcs) { - val pre = "${prefix}_$name".toPascalCase() - val file = File("$pathToDir/$pre.kt") - file.printWriter().use { - it.appendLine("// ktlint-disable filename") - it.appendLine("@file:Suppress(\"ClassName\")") - it.appendLine() - it.appendLine(packageName) - it.appendLine() - it.appendLine(imports) - it.appendLine() - fns.forEach { sig -> - val clazz = "${prefix}_${sig.specific}" - val params = toParams(clazz, sig) - val code = String.format(template, *params) - it.appendLine(code) - it.appendLine() - clazzes.add(clazz) - } - } - } - println("-- GENERATED") - println("listOf(${clazzes.joinToString()})") - println() - } - - @OptIn(FnExperimental::class) - private fun toParams(clazz: String, fn: FnSignature): Array { - val snake = fn.name - val returns = fn.returns.toString() - val parameters = fn.parameters.mapIndexed { i, p -> - "FnParameter(\"${p.name}\", ${p.type})" - }.joinToString(",\n", postfix = ",") - return arrayOf(clazz, snake, returns, parameters, fn.isNullCall, fn.isNullable, snake) - } - - @OptIn(FnExperimental::class) - private fun toParams(clazz: String, agg: AggSignature): Array { - val snake = agg.name - val returns = agg.returns.toString() - var parameters = "" - for (p in agg.parameters) { - parameters += "FnParameter(\"${p.name}\", ${p.type}),\n" - } - return arrayOf(clazz, snake, returns, parameters, agg.isNullable, agg.isDecomposable, snake) - } -} diff --git a/partiql-spi/src/test/kotlin/org/partiql/spi/connector/sql/SqlHeader.kt b/partiql-spi/src/test/kotlin/org/partiql/spi/connector/sql/SqlHeader.kt deleted file mode 100644 index 62e467e032..0000000000 --- a/partiql-spi/src/test/kotlin/org/partiql/spi/connector/sql/SqlHeader.kt +++ /dev/null @@ -1,831 +0,0 @@ -package org.partiql.spi.connector.sql - -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature -import org.partiql.value.PartiQLValueExperimental -import org.partiql.value.PartiQLValueType -import org.partiql.value.PartiQLValueType.ANY -import org.partiql.value.PartiQLValueType.BAG -import org.partiql.value.PartiQLValueType.BOOL -import org.partiql.value.PartiQLValueType.CHAR -import org.partiql.value.PartiQLValueType.CLOB -import org.partiql.value.PartiQLValueType.DATE -import org.partiql.value.PartiQLValueType.DECIMAL -import org.partiql.value.PartiQLValueType.DECIMAL_ARBITRARY -import org.partiql.value.PartiQLValueType.FLOAT32 -import org.partiql.value.PartiQLValueType.FLOAT64 -import org.partiql.value.PartiQLValueType.INT -import org.partiql.value.PartiQLValueType.INT16 -import org.partiql.value.PartiQLValueType.INT32 -import org.partiql.value.PartiQLValueType.INT64 -import org.partiql.value.PartiQLValueType.INT8 -import org.partiql.value.PartiQLValueType.LIST -import org.partiql.value.PartiQLValueType.MISSING -import org.partiql.value.PartiQLValueType.NULL -import org.partiql.value.PartiQLValueType.SEXP -import org.partiql.value.PartiQLValueType.STRING -import org.partiql.value.PartiQLValueType.SYMBOL -import org.partiql.value.PartiQLValueType.TIME -import org.partiql.value.PartiQLValueType.TIMESTAMP - -/** - * This is a temporary internal object for generating all SQL-99 function signatures. - */ -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -internal object SqlHeader { - - private val all = PartiQLValueType.values() - - private val nullable = listOf( - NULL, // null.null - MISSING, // missing - ) - - private val integer = listOf( - INT8, - INT16, - INT32, - INT64, - INT, - ) - - private val numeric = listOf( - INT8, - INT16, - INT32, - INT64, - INT, - DECIMAL_ARBITRARY, - FLOAT32, - FLOAT64, - ) - - private val text = listOf( - STRING, - SYMBOL, - CLOB, - ) - - private val collections = listOf( - BAG, - LIST, - SEXP, - ) - - private val datetime = listOf( - DATE, - TIME, - TIMESTAMP, - ) - - private enum class DatetimeField { - YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, TIMEZONE_HOUR, TIMEZONE_MINUTE, - } - /** - * PartiQL Scalar Functions - */ - val fns: List = listOf( - builtins(), - logical(), - predicate(), - operators(), - special(), - system(), - ).flatten() - - /** - * PartiQL Aggregation Functions accessible via - */ - val aggs: List = aggBuiltins() - - /** - * Generate all unary and binary operator signatures. - */ - private fun operators(): List = listOf( - pos(), - neg(), - plus(), - minus(), - times(), - div(), - mod(), - concat(), - bitwiseAnd(), - ).flatten() - - /** - * Predicate function -- Condition that can be evaluated to a boolean value. - * - * Predicate function IS NULL, IS MISSING, `=`(Equal) does not propagate `MISSING`. - */ - private fun predicate(): List = listOf( - // SQL - // 8.2 - comparison predicate - lt(), - lte(), - gt(), - gte(), - eq(), - - // 8.3 - between predicate - between(), - // 8.4 - in predicate - inCollection(), - // 8.5 - like predicate - like(), - // 8.7 - null predicate - isNull(), - - // PartiQL - isMissing(), // missing predication - isType(), // type predicate - isTypeSingleArg(), - isTypeDoubleArgsInt(), - isTypeTime(), - ).flatten() - - /** - * Logical functions follows the three-valued logic truth table: - * - * |A |B |A AND B|A OR B |NOT A | - * |----|----|-------|-------|------| - * |T |T |T |T |F | - * |T |F |F |T |F | - * |T |U |U |T |F | - * |F |T |F |T |T | - * |F |F |F |F |T | - * |F |U |F |U |T | - * |U |T |U |T |U | - * |U |F |F |U |U | - * |U |U |U |U |U | - * - * 1. The `MISSING` value, when convert to a truth value, becomes a `UNKNOWN`. - * 2. `UNKNOWN` truth value, when converting to PartiQL Value, becomes NULL of boolean type. - */ - private fun logical(): List = listOf( - not(), - and(), - or(), - ).flatten() - - /** - * SQL Builtins (not special forms) - */ - private fun builtins(): List = listOf( - upper(), - lower(), - trim(), - utcNow(), - ).flatten() - - /** - * SQL and PartiQL special forms - */ - private fun special(): List = listOf( - position(), - substring(), - trimSpecial(), - overlay(), - extract(), - dateAdd(), - dateDiff(), - ).flatten() - - /** - * System functions (for now, CURRENT_USER and CURRENT_DATE) - * - * @return - */ - private fun system(): List = listOf( - currentUser(), - currentDate(), - ) - - // OPERATORS - - private fun not(): List = listOf( - FnSignature( - name = "not", - returns = BOOL, - isNullCall = true, - isNullable = false, - parameters = listOf(FnParameter("value", BOOL)), - ), - FnSignature( - name = "not", - returns = BOOL, - isNullCall = true, - isNullable = false, - parameters = listOf(FnParameter("value", MISSING)), - ), - ) - - private fun pos(): List = numeric.map { t -> - unary("pos", t, t) - } - - private fun neg(): List = numeric.map { t -> - unary("neg", t, t) - } - - private fun eq(): List = all.map { t -> - FnSignature( - name = "eq", - returns = BOOL, - parameters = listOf(FnParameter("lhs", t), FnParameter("rhs", t)), - isNullable = false, - isNullCall = true, - ) - } - - private fun and(): List = listOf( - FnSignature( - name = "and", - returns = BOOL, - isNullCall = false, - isNullable = true, - parameters = listOf(FnParameter("lhs", BOOL), FnParameter("rhs", BOOL)), - ), - FnSignature( - name = "and", - returns = BOOL, - isNullCall = false, - isNullable = true, - parameters = listOf(FnParameter("lhs", MISSING), FnParameter("rhs", BOOL)), - ), - FnSignature( - name = "and", - returns = BOOL, - isNullCall = false, - isNullable = true, - parameters = listOf(FnParameter("lhs", BOOL), FnParameter("rhs", MISSING)), - ), - FnSignature( - name = "and", - returns = BOOL, - isNullCall = false, - isNullable = true, - parameters = listOf(FnParameter("lhs", MISSING), FnParameter("rhs", MISSING)), - ), - ) - - private fun or(): List = listOf( - FnSignature( - name = "or", - returns = BOOL, - isNullCall = false, - isNullable = true, - parameters = listOf(FnParameter("lhs", BOOL), FnParameter("rhs", BOOL)), - ), - FnSignature( - name = "or", - returns = BOOL, - isNullCall = false, - isNullable = true, - parameters = listOf(FnParameter("lhs", MISSING), FnParameter("rhs", BOOL)), - ), - FnSignature( - name = "or", - returns = BOOL, - isNullCall = false, - isNullable = true, - parameters = listOf(FnParameter("lhs", BOOL), FnParameter("rhs", MISSING)), - ), - FnSignature( - name = "or", - returns = BOOL, - isNullCall = false, - isNullable = true, - parameters = listOf(FnParameter("lhs", MISSING), FnParameter("rhs", MISSING)), - ), - ) - - private fun lt(): List = (numeric + text + datetime + BOOL).map { t -> - binary("lt", BOOL, t, t) - } - - private fun lte(): List = (numeric + text + datetime + BOOL).map { t -> - binary("lte", BOOL, t, t) - } - - private fun gt(): List = (numeric + text + datetime + BOOL).map { t -> - binary("gt", BOOL, t, t) - } - - private fun gte(): List = (numeric + text + datetime + BOOL).map { t -> - binary("gte", BOOL, t, t) - } - - private fun plus(): List = numeric.map { t -> - binary("plus", t, t, t) - } - - private fun minus(): List = numeric.map { t -> - binary("minus", t, t, t) - } - - private fun times(): List = numeric.map { t -> - binary("times", t, t, t) - } - - private fun div(): List = numeric.map { t -> - binary("divide", t, t, t) - } - - private fun mod(): List = numeric.map { t -> - binary("modulo", t, t, t) - } - - private fun concat(): List = text.map { t -> - binary("concat", t, t, t) - } - - private fun bitwiseAnd(): List = integer.map { t -> - binary("bitwise_and", t, t, t) - } - - // BUILT INS - private fun upper(): List = text.map { t -> - FnSignature( - name = "upper", - returns = t, - parameters = listOf(FnParameter("value", t)), - isNullable = false, - isNullCall = true, - ) - } - - private fun lower(): List = text.map { t -> - FnSignature( - name = "lower", - returns = t, - parameters = listOf(FnParameter("value", t)), - isNullable = false, - isNullCall = true, - ) - } - - // SPECIAL FORMS - - private fun like(): List = text.flatMap { t -> - listOf( - FnSignature( - name = "like", - returns = BOOL, - parameters = listOf( - FnParameter("value", t), - FnParameter("pattern", t), - ), - isNullCall = true, - isNullable = false, - ), - FnSignature( - name = "like_escape", - returns = BOOL, - parameters = listOf( - FnParameter("value", t), - FnParameter("pattern", t), - FnParameter("escape", t), - ), - isNullCall = true, - isNullable = false, - ), - ) - } - - private fun between(): List = (numeric + text + datetime).map { t -> - FnSignature( - name = "between", - returns = BOOL, - parameters = listOf( - FnParameter("value", t), - FnParameter("lower", t), - FnParameter("upper", t), - ), - isNullable = false, - isNullCall = true, - ) - } - - private fun inCollection(): List = all.map { element -> - collections.map { collection -> - FnSignature( - name = "in_collection", - returns = BOOL, - parameters = listOf( - FnParameter("value", element), - FnParameter("collection", collection), - ), - isNullable = false, - isNullCall = true, - ) - } - }.flatten() - - private fun isNull(): List = listOf( - FnSignature( - name = "is_null", returns = BOOL, - parameters = listOf( - FnParameter("value", ANY) // TODO: Decide if we need to further segment this - ), - isNullCall = false, isNullable = false - ) - ) - - private fun isMissing(): List = listOf( - FnSignature( - name = "is_missing", returns = BOOL, - parameters = listOf( - FnParameter("value", ANY) // TODO: Decide if we need to further segment this - ), - isNullCall = false, isNullable = false - ) - ) - - // To model type assertion, generating a list of assertion function based on the type, - // and the parameter will be the value entered. - // i.e., 1 is INT2 => is_int16(1) - private fun isType(): List = all.filterNot { it == NULL || it == MISSING }.map { element -> - FnSignature( - name = "is_${element.name.lowercase()}", - returns = BOOL, - parameters = listOf( - FnParameter("value", ANY) - ), - isNullable = false, - isNullCall = false, - ) - } - - // In type assertion, it is possible for types to have args - // i.e., 'a' is CHAR(2) - // we put type parameter before value. - private fun isTypeSingleArg(): List = listOf(CHAR, STRING).map { element -> - FnSignature( - name = "is_${element.name.lowercase()}", returns = BOOL, - parameters = listOf( - FnParameter("type_parameter_1", INT32), FnParameter("value", ANY) - ), - isNullable = false, isNullCall = false - ) - } - - private fun isTypeDoubleArgsInt(): List = listOf(DECIMAL).map { element -> - FnSignature( - name = "is_${element.name.lowercase()}", returns = BOOL, - parameters = listOf( - FnParameter("type_parameter_1", INT32), - FnParameter("type_parameter_2", INT32), - FnParameter("value", ANY) - ), - isNullable = false, isNullCall = false - ) - } - - private fun isTypeTime(): List = listOf(TIME, TIMESTAMP).map { element -> - FnSignature( - name = "is_${element.name.lowercase()}", returns = BOOL, - parameters = listOf( - FnParameter("type_parameter_1", BOOL), - FnParameter("type_parameter_2", INT32), - FnParameter("value", ANY) // TODO: Decide if we need to further segment this - ), - isNullable = false, isNullCall = false - ) - } - - // SUBSTRING (expression, start[, length]?) - // SUBSTRINGG(expression from start [FOR length]? ) - private fun substring(): List = text.map { t -> - listOf( - FnSignature( - name = "substring", - returns = t, - parameters = listOf( - FnParameter("value", t), - FnParameter("start", INT64), - ), - isNullable = false, - isNullCall = true, - ), - FnSignature( - name = "substring", - returns = t, - parameters = listOf( - FnParameter("value", t), - FnParameter("start", INT64), - FnParameter("end", INT64), - ), - isNullable = false, - isNullCall = true, - ) - ) - }.flatten() - - // position (str1, str2) - // position (str1 in str2) - private fun position(): List = text.map { t -> - FnSignature( - name = "position", - returns = INT64, - parameters = listOf( - FnParameter("probe", t), - FnParameter("value", t), - ), - isNullable = false, - isNullCall = true, - ) - } - - // trim(str) - private fun trim(): List = text.map { t -> - FnSignature( - name = "trim", - returns = t, - parameters = listOf( - FnParameter("value", t), - ), - isNullable = false, - isNullCall = true, - ) - } - - // TODO: We need to add a special form function for TRIM(BOTH FROM value) - private fun trimSpecial(): List = text.map { t -> - listOf( - // TRIM(chars FROM value) - // TRIM(both chars from value) - FnSignature( - name = "trim_chars", - returns = t, - parameters = listOf( - FnParameter("value", t), - FnParameter("chars", t), - ), - isNullable = false, - isNullCall = true, - ), - // TRIM(LEADING FROM value) - FnSignature( - name = "trim_leading", - returns = t, - parameters = listOf( - FnParameter("value", t), - ), - isNullable = false, - isNullCall = true, - ), - // TRIM(LEADING chars FROM value) - FnSignature( - name = "trim_leading_chars", - returns = t, - parameters = listOf( - FnParameter("value", t), - FnParameter("chars", t), - ), - isNullable = false, - isNullCall = true, - ), - // TRIM(TRAILING FROM value) - FnSignature( - name = "trim_trailing", - returns = t, - parameters = listOf( - FnParameter("value", t), - ), - isNullable = false, - isNullCall = true, - ), - // TRIM(TRAILING chars FROM value) - FnSignature( - name = "trim_trailing_chars", - returns = t, - parameters = listOf( - FnParameter("value", t), - FnParameter("chars", t), - ), - isNullable = false, - isNullCall = true, - ), - ) - }.flatten() - - // TODO - private fun overlay(): List = emptyList() - - // TODO - private fun extract(): List = emptyList() - - private fun dateAdd(): List { - val intervals = listOf(INT32, INT64, INT) - val operators = mutableListOf() - for (field in DatetimeField.values()) { - for (type in datetime) { - if (field == DatetimeField.TIMEZONE_HOUR || field == DatetimeField.TIMEZONE_MINUTE) { - continue - } - for (interval in intervals) { - val signature = FnSignature( - name = "date_add_${field.name.lowercase()}", - returns = type, - parameters = listOf( - FnParameter("interval", interval), - FnParameter("datetime", type), - ), - isNullable = false, - isNullCall = true, - ) - operators.add(signature) - } - } - } - return operators - } - - private fun dateDiff(): List { - val operators = mutableListOf() - for (field in DatetimeField.values()) { - for (type in datetime) { - if (field == DatetimeField.TIMEZONE_HOUR || field == DatetimeField.TIMEZONE_MINUTE) { - continue - } - val signature = FnSignature( - name = "date_diff_${field.name.lowercase()}", - returns = INT64, - parameters = listOf( - FnParameter("datetime1", type), - FnParameter("datetime2", type), - ), - isNullable = false, - isNullCall = true, - ) - operators.add(signature) - } - } - return operators - } - - private fun utcNow(): List = listOf( - FnSignature( - name = "utcnow", - returns = TIMESTAMP, - parameters = emptyList(), - isNullable = false, - ) - ) - - private fun currentUser() = FnSignature( - name = "current_user", - returns = STRING, - parameters = emptyList(), - isNullable = true, - ) - - private fun currentDate() = FnSignature( - name = "current_date", - returns = DATE, - parameters = emptyList(), - isNullable = false, - ) - - // ==================================== - // AGGREGATIONS - // ==================================== - - /** - * SQL and PartiQL Aggregation Builtins - */ - private fun aggBuiltins(): List = listOf( - every(), - any(), - some(), - count(), - min(), - max(), - sum(), - avg(), - ).flatten() - - private fun every() = listOf( - AggSignature( - name = "every", - returns = BOOL, - parameters = listOf(FnParameter("value", BOOL)), - isNullable = true, - ), - ) - - private fun any() = listOf( - AggSignature( - name = "any", - returns = BOOL, - parameters = listOf(FnParameter("value", BOOL)), - isNullable = true, - ), - ) - - private fun some() = listOf( - AggSignature( - name = "some", - returns = BOOL, - parameters = listOf(FnParameter("value", BOOL)), - isNullable = true, - ), - ) - - private fun count() = listOf( - AggSignature( - name = "count", - returns = INT32, - parameters = listOf(FnParameter("value", ANY)), - isNullable = false, - ), - AggSignature( - name = "count_star", - returns = INT32, - parameters = listOf(), - isNullable = false, - ), - ) - - private fun min() = numeric.map { - AggSignature( - name = "min", - returns = it, - parameters = listOf(FnParameter("value", it)), - isNullable = true, - ) - } - - private fun max() = numeric.map { - AggSignature( - name = "max", - returns = it, - parameters = listOf(FnParameter("value", it)), - isNullable = true, - ) - } - - private fun sum() = numeric.map { - AggSignature( - name = "sum", - returns = it, - parameters = listOf(FnParameter("value", it)), - isNullable = true, - ) - } - - private fun avg() = numeric.map { - AggSignature( - name = "avg", - returns = it, - parameters = listOf(FnParameter("value", it)), - isNullable = true, - ) - } - - // ==================================== - // HELPERS - // ==================================== - - @JvmStatic - internal fun unary(name: String, returns: PartiQLValueType, value: PartiQLValueType) = FnSignature( - name = name, - returns = returns, - parameters = listOf(FnParameter("value", value)), - isNullable = false, - isNullCall = true - ) - - @JvmStatic - internal fun binary(name: String, returns: PartiQLValueType, lhs: PartiQLValueType, rhs: PartiQLValueType) = - FnSignature( - name = name, - returns = returns, - parameters = listOf(FnParameter("lhs", lhs), FnParameter("rhs", rhs)), - isNullable = false, - isNullCall = true - ) - - /** - * Dump the Header as SQL commands - * - * For functions, output CREATE FUNCTION statements. - */ - override fun toString(): String = buildString { - fns.groupBy { it.name }.forEach { - appendLine("-- [${it.key}] ---------") - appendLine() - it.value.forEach { fn -> appendLine(fn) } - appendLine() - } - aggs.groupBy { it.name }.forEach { - appendLine("-- [${it.key}] ---------") - appendLine() - it.value.forEach { fn -> appendLine(fn) } - appendLine() - } - } -} diff --git a/plugins/partiql-local/src/main/kotlin/org/partiql/plugins/local/LocalConnector.kt b/plugins/partiql-local/src/main/kotlin/org/partiql/plugins/local/LocalConnector.kt index 9072c659c8..9a08b03c7d 100644 --- a/plugins/partiql-local/src/main/kotlin/org/partiql/plugins/local/LocalConnector.kt +++ b/plugins/partiql-local/src/main/kotlin/org/partiql/plugins/local/LocalConnector.kt @@ -17,14 +17,11 @@ package org.partiql.plugins.local import com.amazon.ionelement.api.StructElement import org.partiql.spi.BindingPath import org.partiql.spi.connector.Connector -import org.partiql.spi.connector.ConnectorAggProvider import org.partiql.spi.connector.ConnectorBindings -import org.partiql.spi.connector.ConnectorFnProvider import org.partiql.spi.connector.ConnectorHandle import org.partiql.spi.connector.ConnectorMetadata import org.partiql.spi.connector.ConnectorPath import org.partiql.spi.connector.ConnectorSession -import org.partiql.spi.fn.FnExperimental import java.nio.file.Path import java.nio.file.Paths import kotlin.io.path.notExists @@ -67,16 +64,6 @@ public class LocalConnector( TODO("Not yet implemented") } - @FnExperimental - override fun getFunctions(): ConnectorFnProvider { - TODO("Not yet implemented") - } - - @FnExperimental - override fun getAggregations(): ConnectorAggProvider { - TODO("Not yet implemented") - } - internal class Factory : Connector.Factory { private val default: Path = Paths.get(System.getProperty("user.home")).resolve(".partiql/local") @@ -114,14 +101,6 @@ public class LocalConnector( ) } - @FnExperimental - override fun getFunction(path: BindingPath): ConnectorHandle.Fn? { - TODO("Not yet implemented") - } - - @FnExperimental - override fun getAggregation(path: BindingPath): ConnectorHandle.Agg? = null - internal fun listObjects(): List = catalog.listObjects() } } diff --git a/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryCatalog.kt b/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryCatalog.kt index 426b65d496..f138165cb1 100644 --- a/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryCatalog.kt +++ b/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryCatalog.kt @@ -17,12 +17,8 @@ package org.partiql.plugins.memory import org.partiql.spi.BindingName import org.partiql.spi.BindingPath -import org.partiql.spi.connector.ConnectorFnProvider import org.partiql.spi.connector.ConnectorHandle import org.partiql.spi.connector.ConnectorPath -import org.partiql.spi.connector.sql.SqlFnProvider -import org.partiql.spi.connector.sql.info.InfoSchema -import org.partiql.spi.fn.FnExperimental /** * A basic catalog implementation used in testing. @@ -31,10 +27,7 @@ import org.partiql.spi.fn.FnExperimental * * @property name */ -public class MemoryCatalog(public val name: String, public val infoSchema: InfoSchema) { - - @OptIn(FnExperimental::class) - public fun getFunctions(): ConnectorFnProvider = SqlFnProvider(infoSchema.functions) +public class MemoryCatalog(public val name: String) { private val root: Tree.Dir = Tree.Dir(name) @@ -122,12 +115,6 @@ public class MemoryCatalog(public val name: String, public val infoSchema: InfoS @JvmStatic public fun builder(): MemoryCatalogBuilder = MemoryCatalogBuilder() - - @JvmStatic - public fun SQL(): MemoryCatalogBuilder = MemoryCatalogBuilder().info(InfoSchema.default()) - - @JvmStatic - public fun PartiQL(): MemoryCatalogBuilder = MemoryCatalogBuilder().info(InfoSchema.ext()) } private sealed interface Tree { diff --git a/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryCatalogBuilder.kt b/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryCatalogBuilder.kt index 15d6e06c58..e7ba9c799c 100644 --- a/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryCatalogBuilder.kt +++ b/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryCatalogBuilder.kt @@ -19,12 +19,6 @@ import com.amazon.ionelement.api.IonElement import org.partiql.spi.BindingCase import org.partiql.spi.BindingName import org.partiql.spi.BindingPath -import org.partiql.spi.connector.ConnectorPath -import org.partiql.spi.connector.sql.info.InfoSchema -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.Index import org.partiql.types.StaticType import org.partiql.value.PartiQLValueExperimental import org.partiql.value.io.PartiQLValueIonReaderBuilder @@ -35,13 +29,10 @@ import org.partiql.value.io.PartiQLValueIonReaderBuilder public class MemoryCatalogBuilder { private var _name: String? = null - private var _info: InfoSchema? = null private var _items: MutableList> = mutableListOf() public fun name(name: String): MemoryCatalogBuilder = this.apply { this._name = name } - public fun info(info: InfoSchema): MemoryCatalogBuilder = this.apply { this._info = info } - /** * This is a simple `dot` delimited utility for adding type definitions. * @@ -61,20 +52,9 @@ public class MemoryCatalogBuilder { _items.add(path to obj) } - @OptIn(FnExperimental::class) public fun build(): MemoryCatalog { val name = _name ?: error("MemoryCatalog must have a name") - val info = _info ?: InfoSchema( - object : Index { - override fun get(path: List): List = emptyList() - override fun get(path: ConnectorPath, specific: String): Fn? = null - }, - object : Index { - override fun get(path: List): List = emptyList() - override fun get(path: ConnectorPath, specific: String): Agg? = null - } - ) - val catalog = MemoryCatalog(name, info) + val catalog = MemoryCatalog(name) for (item in _items) { catalog.insert(item.first, item.second) } return catalog } diff --git a/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryConnector.kt b/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryConnector.kt index ea984ae2e8..9ad57afc16 100644 --- a/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryConnector.kt +++ b/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryConnector.kt @@ -18,25 +18,19 @@ package org.partiql.plugins.memory import com.amazon.ionelement.api.StructElement import org.partiql.spi.connector.Connector import org.partiql.spi.connector.ConnectorBindings -import org.partiql.spi.connector.ConnectorFnProvider +import org.partiql.spi.connector.ConnectorMetadata import org.partiql.spi.connector.ConnectorSession -import org.partiql.spi.connector.sql.SqlConnector -import org.partiql.spi.connector.sql.SqlMetadata -import org.partiql.spi.fn.FnExperimental /** * This is a plugin used for testing and is not a versioned API per semver. */ -public class MemoryConnector(private val catalog: MemoryCatalog) : SqlConnector() { +public class MemoryConnector(private val catalog: MemoryCatalog) : Connector { private val bindings = MemoryBindings(catalog) override fun getBindings(): ConnectorBindings = bindings - override fun getMetadata(session: ConnectorSession): SqlMetadata = MemoryMetadata(catalog, session, catalog.infoSchema) - - @OptIn(FnExperimental::class) - override fun getFunctions(): ConnectorFnProvider = catalog.getFunctions() + override fun getMetadata(session: ConnectorSession): ConnectorMetadata = MemoryMetadata(catalog) internal class Factory(private val catalogs: List) : Connector.Factory { @@ -48,13 +42,4 @@ public class MemoryConnector(private val catalog: MemoryCatalog) : SqlConnector( return MemoryConnector(catalog) } } - - public companion object { - - /** - * A connector whose catalogs holds no binding and all SQL-92 function and PartiQL-Builtin - */ - @JvmStatic - public fun partiQL(): MemoryConnector = MemoryConnector(MemoryCatalog.PartiQL().name("default").build()) - } } diff --git a/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryMetadata.kt b/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryMetadata.kt index 2818d85803..9e1182fca9 100644 --- a/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryMetadata.kt +++ b/plugins/partiql-memory/src/main/kotlin/org/partiql/plugins/memory/MemoryMetadata.kt @@ -2,23 +2,11 @@ package org.partiql.plugins.memory import org.partiql.spi.BindingPath import org.partiql.spi.connector.ConnectorHandle -import org.partiql.spi.connector.ConnectorSession -import org.partiql.spi.connector.sql.SqlMetadata -import org.partiql.spi.connector.sql.info.InfoSchema -import org.partiql.spi.fn.FnExperimental +import org.partiql.spi.connector.ConnectorMetadata -internal class MemoryMetadata( - private val catalog: MemoryCatalog, - session: ConnectorSession, - info: InfoSchema, -) : SqlMetadata(session, info) { +internal class MemoryMetadata(private val catalog: MemoryCatalog) : ConnectorMetadata { override fun getObject(path: BindingPath): ConnectorHandle.Obj? { - return super.getObject(path) ?: catalog.find(path) - } - - @FnExperimental - override fun getFunction(path: BindingPath): ConnectorHandle.Fn? { - return super.getFunction(path) + return catalog.find(path) } } From 9e525dce9c2f0358688c055d1d5778163ff7df30 Mon Sep 17 00:00:00 2001 From: "R. C. Howell" Date: Fri, 26 Jul 2024 14:23:39 -0700 Subject: [PATCH 3/7] Intermediate internalization of functions to planner --- .../org/partiql/eval/internal/Compiler.kt | 6 +- .../org/partiql/eval/internal/Symbols.kt | 2 +- .../eval/internal/operator/Operator.kt | 2 +- .../org/partiql/planner/internal/Env.kt | 24 +-- .../partiql/planner/internal/FnComparator.kt | 7 +- .../org/partiql/planner/internal/FnMatch.kt | 5 +- .../partiql/planner/internal/FnResolver.kt | 5 +- .../planner/internal/PathResolverAgg.kt | 20 --- .../planner/internal/PathResolverFn.kt | 32 ---- .../org/partiql/planner/internal/fn/Agg.kt | 1 - .../planner/internal/fn/AggSignature.kt | 1 - .../org/partiql/planner/internal/fn/Fn.kt | 1 - .../planner/internal/fn/FnParameter.kt | 1 - .../planner/internal/fn/FnSignature.kt | 1 - .../org/partiql/planner/internal/fn/Index.kt | 76 -------- .../partiql/planner/internal/fn/IndexMap.kt | 23 --- .../internal/fn/{sql => }/SqlBuiltins.kt | 19 +- .../planner/internal/fn/SqlFnProvider.kt | 33 ++++ .../internal/fn/{sql => }/builtins/AggAny.kt | 19 +- .../internal/fn/{sql => }/builtins/AggAvg.kt | 47 +++-- .../fn/{sql => }/builtins/AggCount.kt | 15 +- .../fn/{sql => }/builtins/AggEvery.kt | 19 +- .../fn/{sql => }/builtins/AggGroupAs.kt | 15 +- .../internal/fn/{sql => }/builtins/AggMax.kt | 47 +++-- .../internal/fn/{sql => }/builtins/AggMin.kt | 47 +++-- .../internal/fn/{sql => }/builtins/AggSome.kt | 19 +- .../internal/fn/{sql => }/builtins/AggSum.kt | 47 +++-- .../internal/fn/{sql => }/builtins/FnAbs.kt | 27 +-- .../internal/fn/{sql => }/builtins/FnAnd.kt | 12 +- .../fn/{sql => }/builtins/FnBetween.kt | 38 ++-- .../fn/{sql => }/builtins/FnBitLength.kt | 17 +- .../fn/{sql => }/builtins/FnBitwiseAnd.kt | 20 +-- .../fn/{sql => }/builtins/FnCardinality.kt | 18 +- .../fn/{sql => }/builtins/FnCharLength.kt | 16 +- .../fn/{sql => }/builtins/FnCollAgg.kt | 29 ++- .../fn/{sql => }/builtins/FnConcat.kt | 16 +- .../fn/{sql => }/builtins/FnCurrentDate.kt | 10 +- .../fn/{sql => }/builtins/FnCurrentUser.kt | 10 +- .../fn/{sql => }/builtins/FnDateAddDay.kt | 30 ++-- .../fn/{sql => }/builtins/FnDateAddHour.kt | 34 ++-- .../fn/{sql => }/builtins/FnDateAddMinute.kt | 34 ++-- .../fn/{sql => }/builtins/FnDateAddMonth.kt | 34 ++-- .../fn/{sql => }/builtins/FnDateAddSecond.kt | 34 ++-- .../fn/{sql => }/builtins/FnDateAddYear.kt | 34 ++-- .../fn/{sql => }/builtins/FnDateDiffDay.kt | 14 +- .../fn/{sql => }/builtins/FnDateDiffHour.kt | 14 +- .../fn/{sql => }/builtins/FnDateDiffMinute.kt | 14 +- .../fn/{sql => }/builtins/FnDateDiffMonth.kt | 14 +- .../fn/{sql => }/builtins/FnDateDiffSecond.kt | 14 +- .../fn/{sql => }/builtins/FnDateDiffYear.kt | 14 +- .../fn/{sql => }/builtins/FnDivide.kt | 26 +-- .../internal/fn/{sql => }/builtins/FnEq.kt | 15 +- .../fn/{sql/exts => builtins}/FnExists.kt | 17 +- .../fn/{sql => }/builtins/FnExtract.kt | 49 +++--- .../internal/fn/{sql => }/builtins/FnGt.kt | 38 ++-- .../internal/fn/{sql => }/builtins/FnGte.kt | 38 ++-- .../fn/{sql => }/builtins/FnInCollection.kt | 166 +++++++++--------- .../internal/fn/{sql => }/builtins/FnIsAny.kt | 12 +- .../internal/fn/{sql => }/builtins/FnIsBag.kt | 12 +- .../fn/{sql => }/builtins/FnIsBinary.kt | 12 +- .../fn/{sql => }/builtins/FnIsBlob.kt | 12 +- .../fn/{sql => }/builtins/FnIsBool.kt | 12 +- .../fn/{sql => }/builtins/FnIsByte.kt | 12 +- .../fn/{sql => }/builtins/FnIsChar.kt | 14 +- .../fn/{sql => }/builtins/FnIsClob.kt | 12 +- .../fn/{sql => }/builtins/FnIsDate.kt | 12 +- .../fn/{sql => }/builtins/FnIsDecimal.kt | 14 +- .../builtins/FnIsDecimalArbitrary.kt | 12 +- .../fn/{sql => }/builtins/FnIsFloat32.kt | 12 +- .../fn/{sql => }/builtins/FnIsFloat64.kt | 12 +- .../internal/fn/{sql => }/builtins/FnIsInt.kt | 12 +- .../fn/{sql => }/builtins/FnIsInt16.kt | 12 +- .../fn/{sql => }/builtins/FnIsInt32.kt | 12 +- .../fn/{sql => }/builtins/FnIsInt64.kt | 12 +- .../fn/{sql => }/builtins/FnIsInt8.kt | 12 +- .../fn/{sql => }/builtins/FnIsInterval.kt | 12 +- .../fn/{sql => }/builtins/FnIsList.kt | 12 +- .../fn/{sql => }/builtins/FnIsMissing.kt | 12 +- .../fn/{sql => }/builtins/FnIsNull.kt | 15 +- .../fn/{sql => }/builtins/FnIsSexp.kt | 12 +- .../fn/{sql => }/builtins/FnIsString.kt | 14 +- .../fn/{sql => }/builtins/FnIsStruct.kt | 12 +- .../fn/{sql => }/builtins/FnIsSymbol.kt | 12 +- .../fn/{sql => }/builtins/FnIsTime.kt | 14 +- .../fn/{sql => }/builtins/FnIsTimestamp.kt | 14 +- .../internal/fn/{sql => }/builtins/FnLike.kt | 19 +- .../fn/{sql => }/builtins/FnLikeEscape.kt | 21 ++- .../internal/fn/{sql => }/builtins/FnLower.kt | 16 +- .../internal/fn/{sql => }/builtins/FnLt.kt | 38 ++-- .../internal/fn/{sql => }/builtins/FnLte.kt | 38 ++-- .../internal/fn/{sql => }/builtins/FnMinus.kt | 27 +-- .../fn/{sql => }/builtins/FnModulo.kt | 26 +-- .../internal/fn/{sql => }/builtins/FnNeg.kt | 27 +-- .../internal/fn/{sql => }/builtins/FnNot.kt | 12 +- .../fn/{sql => }/builtins/FnOctetLength.kt | 16 +- .../internal/fn/{sql => }/builtins/FnOr.kt | 12 +- .../internal/fn/{sql => }/builtins/FnPlus.kt | 27 +-- .../internal/fn/{sql => }/builtins/FnPos.kt | 26 +-- .../fn/{sql => }/builtins/FnPosition.kt | 17 +- .../fn/{sql/exts => builtins}/FnSize.kt | 17 +- .../fn/{sql => }/builtins/FnSubstring.kt | 78 +++++--- .../internal/fn/{sql => }/builtins/FnTimes.kt | 27 +-- .../internal/fn/{sql => }/builtins/FnTrim.kt | 18 +- .../fn/{sql => }/builtins/FnTrimChars.kt | 17 +- .../fn/{sql => }/builtins/FnTrimLeading.kt | 17 +- .../{sql => }/builtins/FnTrimLeadingChars.kt | 17 +- .../fn/{sql => }/builtins/FnTrimTrailing.kt | 17 +- .../{sql => }/builtins/FnTrimTrailingChars.kt | 17 +- .../internal/fn/{sql => }/builtins/FnUpper.kt | 16 +- .../fn/{sql => }/builtins/FnUtcnow.kt | 10 +- .../builtins/internal/Accumulator.kt | 12 +- .../builtins/internal/AccumulatorAnySome.kt | 2 +- .../builtins/internal/AccumulatorAvg.kt | 4 +- .../builtins/internal/AccumulatorCount.kt | 2 +- .../builtins/internal/AccumulatorCountStar.kt | 7 +- .../builtins/internal/AccumulatorEvery.kt | 2 +- .../builtins/internal/AccumulatorGroupAs.kt | 2 +- .../builtins/internal/AccumulatorMax.kt | 2 +- .../builtins/internal/AccumulatorMin.kt | 2 +- .../builtins/internal/AccumulatorSum.kt | 4 +- .../planner/internal/fn/sql/PartiQLExts.kt | 23 --- .../partiql/planner/internal/fn/sql/SqlAgg.kt | 35 ---- .../planner/internal/fn/sql/SqlAggProvider.kt | 33 ---- .../planner/internal/fn/sql/SqlBindings.kt | 32 ---- .../planner/internal/fn/sql/SqlConnector.kt | 53 ------ .../partiql/planner/internal/fn/sql/SqlFn.kt | 34 ---- .../planner/internal/fn/sql/SqlFnProvider.kt | 32 ---- .../planner/internal/fn/sql/SqlMetadata.kt | 65 ------- .../internal/fn/sql/info/InfoSchema.kt | 54 ------ .../planner/internal/fn/sql/info/InfoView.kt | 16 -- .../internal/fn/sql/info/InfoViewRoutines.kt | 35 ---- .../fn/{sql => }/utils/PatternUtils.kt | 4 +- .../fn/{sql => }/utils/StringUtils.kt | 2 +- .../org/partiql/planner/internal/ir/Nodes.kt | 6 +- .../planner/internal/transforms/Symbols.kt | 6 +- .../planner/internal/typer/PlanTyper.kt | 10 +- 136 files changed, 1152 insertions(+), 1629 deletions(-) delete mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/PathResolverAgg.kt delete mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/PathResolverFn.kt delete mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Index.kt delete mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/IndexMap.kt rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/SqlBuiltins.kt (97%) create mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlFnProvider.kt rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/AggAny.kt (63%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/AggAvg.kt (74%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/AggCount.kt (57%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/AggEvery.kt (63%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/AggGroupAs.kt (57%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/AggMax.kt (73%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/AggMin.kt (73%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/AggSome.kt (63%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/AggSum.kt (73%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnAbs.kt (87%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnAnd.kt (81%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnBetween.kt (91%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnBitLength.kt (83%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnBitwiseAnd.kt (87%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnCardinality.kt (83%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnCharLength.kt (83%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnCollAgg.kt (72%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnConcat.kt (85%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnCurrentDate.kt (71%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnCurrentUser.kt (71%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnDateAddDay.kt (86%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnDateAddHour.kt (85%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnDateAddMinute.kt (85%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnDateAddMonth.kt (85%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnDateAddSecond.kt (85%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnDateAddYear.kt (85%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnDateDiffDay.kt (79%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnDateDiffHour.kt (79%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnDateDiffMinute.kt (79%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnDateDiffMonth.kt (79%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnDateDiffSecond.kt (79%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnDateDiffYear.kt (79%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnDivide.kt (89%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnEq.kt (81%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql/exts => builtins}/FnExists.kt (84%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnExtract.kt (88%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnGt.kt (89%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnGte.kt (89%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnInCollection.kt (92%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsAny.kt (70%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsBag.kt (72%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsBinary.kt (72%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsBlob.kt (72%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsBool.kt (72%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsByte.kt (72%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsChar.kt (83%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsClob.kt (72%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsDate.kt (72%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsDecimal.kt (89%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsDecimalArbitrary.kt (73%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsFloat32.kt (78%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsFloat64.kt (76%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsInt.kt (79%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsInt16.kt (85%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsInt32.kt (84%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsInt64.kt (83%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsInt8.kt (86%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsInterval.kt (72%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsList.kt (72%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsMissing.kt (74%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsNull.kt (68%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsSexp.kt (72%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsString.kt (82%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsStruct.kt (72%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsSymbol.kt (72%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsTime.kt (79%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnIsTimestamp.kt (79%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnLike.kt (85%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnLikeEscape.kt (87%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnLower.kt (82%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnLt.kt (89%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnLte.kt (89%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnMinus.kt (89%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnModulo.kt (89%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnNeg.kt (86%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnNot.kt (74%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnOctetLength.kt (83%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnOr.kt (79%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnPlus.kt (88%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnPos.kt (82%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnPosition.kt (83%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql/exts => builtins}/FnSize.kt (83%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnSubstring.kt (77%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnTimes.kt (89%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnTrim.kt (87%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnTrimChars.kt (84%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnTrimLeading.kt (81%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnTrimLeadingChars.kt (84%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnTrimTrailing.kt (81%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnTrimTrailingChars.kt (84%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnUpper.kt (83%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/FnUtcnow.kt (75%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/internal/Accumulator.kt (97%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/internal/AccumulatorAnySome.kt (89%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/internal/AccumulatorAvg.kt (91%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/internal/AccumulatorCount.kt (86%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/internal/AccumulatorCountStar.kt (64%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/internal/AccumulatorEvery.kt (90%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/internal/AccumulatorGroupAs.kt (86%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/internal/AccumulatorMax.kt (88%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/internal/AccumulatorMin.kt (87%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/builtins/internal/AccumulatorSum.kt (91%) delete mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/PartiQLExts.kt delete mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlAgg.kt delete mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlAggProvider.kt delete mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlBindings.kt delete mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlConnector.kt delete mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlFn.kt delete mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlFnProvider.kt delete mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlMetadata.kt delete mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoSchema.kt delete mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoView.kt delete mode 100644 partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoViewRoutines.kt rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/utils/PatternUtils.kt (98%) rename partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/{sql => }/utils/StringUtils.kt (99%) diff --git a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Compiler.kt b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Compiler.kt index 2460f2d2aa..6accc02d31 100644 --- a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Compiler.kt +++ b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Compiler.kt @@ -179,7 +179,7 @@ internal class Compiler( return RelAggregate(input, groups, calls) } - @OptIn(FnExperimental::class) + override fun visitRelOpAggregateCall(node: Rel.Op.Aggregate.Call, ctx: PType?): Operator.Aggregation { val args = node.args.map { visitRex(it, it.type).modeHandled() } val setQuantifier: Operator.Aggregation.SetQuantifier = when (node.setQuantifier) { @@ -212,7 +212,7 @@ internal class Compiler( return ExprPathIndex(root, index) } - @OptIn(FnExperimental::class) + override fun visitRexOpCallStatic(node: Rex.Op.Call.Static, ctx: PType?): Operator { val fn = symbols.getFn(node.fn) val args = node.args.map { visitRex(it, ctx) }.toTypedArray() @@ -225,7 +225,7 @@ internal class Compiler( } } - @OptIn(FnExperimental::class) + override fun visitRexOpCallDynamic(node: Rex.Op.Call.Dynamic, ctx: PType?): Operator { val args = node.args.map { visitRex(it, ctx).modeHandled() }.toTypedArray() // Check candidate list size diff --git a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Symbols.kt b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Symbols.kt index d770c79484..5987b5bb88 100644 --- a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Symbols.kt +++ b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Symbols.kt @@ -20,7 +20,7 @@ import org.partiql.spi.fn.FnExperimental * * @property catalogs */ -@OptIn(FnExperimental::class) + internal class Symbols private constructor(private val catalogs: Array) { private class C( diff --git a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/Operator.kt b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/Operator.kt index 35b9a17ebb..216e0fc398 100644 --- a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/Operator.kt +++ b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/Operator.kt @@ -30,7 +30,7 @@ internal sealed interface Operator { interface Aggregation : Operator { - @OptIn(FnExperimental::class) + val delegate: Agg val args: List diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt index cff44413b2..3b3178de99 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt @@ -4,6 +4,7 @@ import org.partiql.planner.catalog.Session import org.partiql.planner.catalog.Name import org.partiql.planner.internal.casts.CastTable import org.partiql.planner.internal.casts.Coercions +import org.partiql.planner.internal.fn.AggSignature import org.partiql.planner.internal.ir.Ref import org.partiql.planner.internal.ir.Rel import org.partiql.planner.internal.ir.Rex @@ -22,8 +23,8 @@ import org.partiql.spi.BindingCase import org.partiql.spi.BindingName import org.partiql.spi.BindingPath import org.partiql.spi.connector.ConnectorMetadata -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental +import org.partiql.planner.internal.fn.AggSignature +import org.partiql.planner.internal.fn.FnExperimental import org.partiql.types.PType import org.partiql.types.PType.Kind @@ -52,16 +53,6 @@ internal class Env(private val session: Session) { */ private val objects: PathResolverObj = PathResolverObj(catalog, catalogs, session) - /** - * A [PathResolver] for looking up functions given both unqualified and qualified names. - */ - private val fns: PathResolverFn = PathResolverFn(catalog, catalogs, session) - - /** - * A [PathResolver] for aggregation function lookup. - */ - private val aggs: PathResolverAgg = PathResolverAgg(catalog, catalogs, session) - /** * This function looks up a global [BindingPath], returning a global reference expression. * @@ -84,8 +75,7 @@ internal class Env(private val session: Session) { val tail = path.steps.drop(depth) return if (tail.isEmpty()) root else root.toPath(tail) } - - @OptIn(FnExperimental::class) + fun resolveFn(path: BindingPath, args: List): Rex? { val item = fns.lookup(path) ?: return null // Invoke FnResolver to determine if we made a match @@ -144,7 +134,6 @@ internal class Env(private val session: Session) { } } - @OptIn(FnExperimental::class) fun resolveAgg(name: String, setQuantifier: Rel.Op.Aggregate.SetQuantifier, args: List): Rel.Op.Aggregate.Call.Resolved? { // TODO: Eventually, do we want to support sensitive lookup? With a path? val path = BindingPath(listOf(BindingName(name, BindingCase.INSENSITIVE))) @@ -217,7 +206,7 @@ internal class Env(private val session: Session) { return userInputPath.steps.size + actualAbsolutePath.size - pathSentToConnector.steps.size } - @OptIn(FnExperimental::class) + private fun match(candidates: List, args: List): Pair>? { // 1. Check for an exact match for (candidate in candidates) { @@ -243,7 +232,7 @@ internal class Env(private val session: Session) { /** * Check if this function accepts the exact input argument types. Assume same arity. */ - @OptIn(FnExperimental::class) + private fun AggSignature.matches(args: List): Boolean { for (i in args.indices) { val a = args[i] @@ -259,7 +248,6 @@ internal class Env(private val session: Session) { * @param args * @return */ - @OptIn(FnExperimental::class) private fun AggSignature.match(args: List): Pair>? { val mapping = arrayOfNulls(args.size) for (i in args.indices) { diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnComparator.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnComparator.kt index f94f52c10c..5996c59621 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnComparator.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnComparator.kt @@ -1,11 +1,9 @@ package org.partiql.planner.internal -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.types.PType import org.partiql.types.PType.Kind -import org.partiql.value.PartiQLValueExperimental /** * Function precedence comparator; this is not formally specified. @@ -13,7 +11,6 @@ import org.partiql.value.PartiQLValueExperimental * 1. Fewest args first * 2. Parameters are compared left-to-right */ -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) internal object FnComparator : Comparator { override fun compare(fn1: FnSignature, fn2: FnSignature): Int { diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnMatch.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnMatch.kt index 8fb4197af9..cf6d1336e3 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnMatch.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnMatch.kt @@ -1,13 +1,12 @@ package org.partiql.planner.internal +import org.partiql.planner.internal.fn.FnSignature import org.partiql.planner.internal.ir.Ref -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnSignature /** * Result of matching an unresolved function. */ -@OptIn(FnExperimental::class) + internal sealed class FnMatch { /** diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnResolver.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnResolver.kt index 33501e4d47..c1ba79edc5 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnResolver.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnResolver.kt @@ -4,8 +4,7 @@ import org.partiql.planner.internal.casts.Coercions import org.partiql.planner.internal.ir.Ref import org.partiql.planner.internal.typer.CompilerType import org.partiql.planner.internal.typer.PlanTyper.Companion.toCType -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.FnSignature import org.partiql.types.PType.Kind /** @@ -23,7 +22,7 @@ import org.partiql.types.PType.Kind * * Reference https://www.postgresql.org/docs/current/typeconv-func.html */ -@OptIn(FnExperimental::class) + internal object FnResolver { /** diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/PathResolverAgg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/PathResolverAgg.kt deleted file mode 100644 index f760729869..0000000000 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/PathResolverAgg.kt +++ /dev/null @@ -1,20 +0,0 @@ -package org.partiql.planner.internal - -import org.partiql.planner.catalog.Session -import org.partiql.spi.BindingPath -import org.partiql.spi.connector.ConnectorAgg -import org.partiql.spi.connector.ConnectorHandle -import org.partiql.spi.connector.ConnectorMetadata -import org.partiql.spi.fn.FnExperimental - -@OptIn(FnExperimental::class) -internal class PathResolverAgg( - catalog: ConnectorMetadata, - catalogs: Map, - session: Session, -) : PathResolver(catalog, catalogs, session) { - - override fun get(metadata: ConnectorMetadata, path: BindingPath): ConnectorHandle.Agg? { - return metadata.getAggregation(path) - } -} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/PathResolverFn.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/PathResolverFn.kt deleted file mode 100644 index 2d70851f79..0000000000 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/PathResolverFn.kt +++ /dev/null @@ -1,32 +0,0 @@ -package org.partiql.planner.internal - -import org.partiql.planner.catalog.Session -import org.partiql.spi.BindingName -import org.partiql.spi.BindingPath -import org.partiql.spi.connector.ConnectorFn -import org.partiql.spi.connector.ConnectorHandle -import org.partiql.spi.connector.ConnectorMetadata -import org.partiql.spi.fn.FnExperimental - -/** - * PathResolver which calls out to get matching function names. - - * - * @param catalog - * @param catalogs - * @param session - */ -@OptIn(FnExperimental::class) -internal class PathResolverFn( - catalog: ConnectorMetadata, - catalogs: Map, - session: Session, -) : PathResolver(catalog, catalogs, session) { - - /** - * Default INFORMATION_SCHEMA.ROUTINES. Keep empty for now for top-level lookup. - */ - override val schema: List = emptyList() - - override fun get(metadata: ConnectorMetadata, path: BindingPath): ConnectorHandle.Fn? = metadata.getFunction(path) -} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Agg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Agg.kt index 7477e33e49..8119a1f220 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Agg.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Agg.kt @@ -6,7 +6,6 @@ import org.partiql.value.PartiQLValueExperimental /** * Represents an SQL table-value expression call. */ -@FnExperimental public interface Agg { /** diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/AggSignature.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/AggSignature.kt index 4c197c76ae..76103cef56 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/AggSignature.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/AggSignature.kt @@ -10,7 +10,6 @@ import org.partiql.value.PartiQLValueType * @property isDecomposable Flag indicating this aggregation can be decomposed * @constructor */ -@FnExperimental @OptIn(PartiQLValueExperimental::class) public class AggSignature( @JvmField public val name: String, diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Fn.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Fn.kt index ed4e41ff87..02dd3bef62 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Fn.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Fn.kt @@ -6,7 +6,6 @@ import org.partiql.value.PartiQLValueExperimental /** * Represents a scalar function (SQL row-value call expression). */ -@FnExperimental public interface Fn { /** diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnParameter.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnParameter.kt index d2448be80b..47c44c3402 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnParameter.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnParameter.kt @@ -10,7 +10,6 @@ import org.partiql.value.PartiQLValueType * @property name A human-readable name to help clarify its use. * @property type The parameter's PartiQL type. */ -@FnExperimental @OptIn(PartiQLValueExperimental::class) public data class FnParameter( public val name: String, diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnSignature.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnSignature.kt index 71595ae0a2..82e48e8058 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnSignature.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnSignature.kt @@ -20,7 +20,6 @@ import org.partiql.value.PartiQLValueType * @property isMissable Flag indicating this function's operator may return a MISSING value. * @property isMissingCall Flag indicating if any of the call arguments is MISSING, the return MISSING. */ -@FnExperimental @OptIn(PartiQLValueExperimental::class) public data class FnSignature( @JvmField public val name: String, diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Index.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Index.kt deleted file mode 100644 index 218bc5d373..0000000000 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Index.kt +++ /dev/null @@ -1,76 +0,0 @@ -package org.partiql.planner.internal.fn - -import org.partiql.planner.internal.connector.ConnectorPath - -/** - * Utility class for an optimized function lookup data structure. Right now this is read only. - */ -@OptIn(FnExperimental::class) -public interface Index { - - /** - * Search for all functions matching the normalized path. - * - * @param path - * @return - */ - public fun get(path: List): List - - /** - * Lookup a function signature by its specific name. - * - * @param specific - * @return - */ - public fun get(path: ConnectorPath, specific: String): T? - - public abstract class Builder { - - /** - * A catalog's builtins exposed via INFORMATION_SCHEMA. - */ - internal val builtins: MutableList = mutableListOf() - - public fun add(fn: T): Builder = this.apply { - builtins.add(fn) - } - - public fun addAll(fns: List): Builder = this.apply { - builtins.addAll(fns) - } - - /** - * Creates a map of function name to variants; variants are keyed by their specific. - * - * @return - */ - public abstract fun build(): Index - - public class Fn : Builder() { - override fun build(): Index { - val fns = builtins - .groupBy { it.signature.name.uppercase() } - .mapValues { e -> e.value.associateBy { f -> f.signature.specific } } - return IndexMap(fns) - } - } - - public class Agg : Builder() { - override fun build(): Index { - val fns = builtins - .groupBy { it.signature.name.uppercase() } - .mapValues { e -> e.value.associateBy { f -> f.signature.specific } } - return IndexMap(fns) - } - } - } - - public companion object { - - @JvmStatic - public fun fnBuilder(): Builder = Builder.Fn() - - @JvmStatic - public fun aggBuilder(): Builder = Builder.Agg() - } -} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/IndexMap.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/IndexMap.kt deleted file mode 100644 index 2587897455..0000000000 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/IndexMap.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.partiql.planner.internal.fn - -import org.partiql.planner.internal.connector.ConnectorPath - -/** - * An implementation of [Index] which uses the normalized paths as map keys. - * - * @property map - */ -internal class IndexMap(private val map: Map>) : Index { - - override fun get(path: List): List { - val key = path.joinToString(".") - val variants = map[key] ?: emptyMap() - return variants.values.toList() - } - - override fun get(path: ConnectorPath, specific: String): T? { - val key = path.steps.joinToString(".") - val variants = map[key] ?: emptyMap() - return variants[specific] - } -} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlBuiltins.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlBuiltins.kt similarity index 97% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlBuiltins.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlBuiltins.kt index b52a423b36..a920ffc6fc 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlBuiltins.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlBuiltins.kt @@ -1,15 +1,11 @@ -package org.partiql.planner.internal.fn.sql +package org.partiql.planner.internal.fn /* ktlint-disable no-wildcard-imports */ -import org.partiql.spi.connector.sql.builtins.* -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental +import org.partiql.planner.internal.fn.builtins.* /** * This is where we will register all SQL builtins. For now, we wrap the generated header to keep the diff small. */ -@OptIn(FnExperimental::class) internal object SqlBuiltins { @JvmStatic @@ -398,6 +394,17 @@ internal object SqlBuiltins { Fn_UPPER__CLOB__CLOB, Fn_UPPER__SYMBOL__SYMBOL, Fn_UTCNOW____TIMESTAMP, + // + // NON SQL FUNCTIONS + // + Fn_EXISTS__BAG__BOOL, + Fn_EXISTS__LIST__BOOL, + Fn_EXISTS__SEXP__BOOL, + Fn_EXISTS__STRUCT__BOOL, + Fn_SIZE__BAG__INT32, + Fn_SIZE__LIST__INT32, + Fn_SIZE__SEXP__INT32, + Fn_SIZE__STRUCT__INT32 ) @JvmStatic diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlFnProvider.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlFnProvider.kt new file mode 100644 index 0000000000..2f6f5bab9a --- /dev/null +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlFnProvider.kt @@ -0,0 +1,33 @@ +/* + * Copyright Amazon.com, Inc. or its affiliates. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"). + * You may not use this file except in compliance with the License. + * A copy of the License is located at: + * + * http://aws.amazon.com/apache2.0/ + * + * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific + * language governing permissions and limitations under the License. + */ + +package org.partiql.planner.internal.fn + +/** + * TODO !! TEMPORARY AS FUNCTIONS ARE MOVED FROM CONNECTORS TO PLANNER. + */ +public object SqlFnProvider { + + // planner and evaluator lookup + private val fnNameIndex: Map = SqlBuiltins.builtins.associateBy { it.signature.name } + private val fnSpecIndex: Map = SqlBuiltins.builtins.associateBy { it.signature.specific } + public fun getFnByName(name: String): Fn? = fnNameIndex[name] + public fun getFnBySpecific(specific: String): Fn? = fnSpecIndex[specific] + + // planner and evaluator lookup + private val aggNameIndex: Map = SqlBuiltins.aggregations.associateBy { it.signature.name } + private val aggSpecIndex: Map = SqlBuiltins.aggregations.associateBy { it.signature.specific } + public fun getAggByName(name: String): Agg? = aggNameIndex[name] + public fun getAggBySpecific(specific: String): Agg? = aggSpecIndex[specific] +} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggAny.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggAny.kt similarity index 63% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggAny.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggAny.kt index a9ab32fe54..f28101941b 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggAny.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggAny.kt @@ -1,19 +1,18 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorAnySome -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter +import org.partiql.planner.internal.fn.Agg +import org.partiql.planner.internal.fn.AggSignature +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorAnySome import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_ANY__BOOL__BOOL : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_ANY__BOOL__BOOL : Agg { override val signature: AggSignature = AggSignature( name = "any", @@ -28,8 +27,8 @@ public object Agg_ANY__BOOL__BOOL : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorAnySome() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_ANY__ANY__BOOL : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_ANY__ANY__BOOL : Agg { override val signature: AggSignature = AggSignature( name = "any", diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggAvg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggAvg.kt similarity index 74% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggAvg.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggAvg.kt index 6487fcd5aa..9cc1f7ea86 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggAvg.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggAvg.kt @@ -1,13 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorAvg -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter +import org.partiql.planner.internal.fn.Agg +import org.partiql.planner.internal.fn.AggSignature +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorAvg import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.DECIMAL @@ -20,8 +19,8 @@ import org.partiql.value.PartiQLValueType.INT32 import org.partiql.value.PartiQLValueType.INT64 import org.partiql.value.PartiQLValueType.INT8 -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_AVG__INT8__INT8 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_AVG__INT8__INT8 : Agg { override val signature: AggSignature = AggSignature( name = "avg", @@ -36,8 +35,8 @@ public object Agg_AVG__INT8__INT8 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorAvg(DECIMAL) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_AVG__INT16__INT16 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_AVG__INT16__INT16 : Agg { override val signature: AggSignature = AggSignature( name = "avg", @@ -52,8 +51,8 @@ public object Agg_AVG__INT16__INT16 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorAvg(DECIMAL) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_AVG__INT32__INT32 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_AVG__INT32__INT32 : Agg { override val signature: AggSignature = AggSignature( name = "avg", @@ -68,8 +67,8 @@ public object Agg_AVG__INT32__INT32 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorAvg(DECIMAL) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_AVG__INT64__INT64 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_AVG__INT64__INT64 : Agg { override val signature: AggSignature = AggSignature( name = "avg", @@ -84,8 +83,8 @@ public object Agg_AVG__INT64__INT64 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorAvg(DECIMAL) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_AVG__INT__INT : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_AVG__INT__INT : Agg { override val signature: AggSignature = AggSignature( name = "avg", @@ -100,8 +99,8 @@ public object Agg_AVG__INT__INT : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorAvg(DECIMAL_ARBITRARY) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_AVG__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_AVG__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Agg { override val signature: AggSignature = AggSignature( name = "avg", @@ -116,8 +115,8 @@ public object Agg_AVG__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorAvg(DECIMAL_ARBITRARY) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_AVG__FLOAT32__FLOAT32 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_AVG__FLOAT32__FLOAT32 : Agg { override val signature: AggSignature = AggSignature( name = "avg", @@ -132,8 +131,8 @@ public object Agg_AVG__FLOAT32__FLOAT32 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorAvg(FLOAT32) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_AVG__FLOAT64__FLOAT64 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_AVG__FLOAT64__FLOAT64 : Agg { override val signature: AggSignature = AggSignature( name = "avg", @@ -148,8 +147,8 @@ public object Agg_AVG__FLOAT64__FLOAT64 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorAvg(FLOAT64) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_AVG__ANY__ANY : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_AVG__ANY__ANY : Agg { override val signature: AggSignature = AggSignature( name = "avg", diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggCount.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggCount.kt similarity index 57% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggCount.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggCount.kt index 163f751ef5..675035561f 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggCount.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggCount.kt @@ -1,19 +1,18 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorCount -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter +import org.partiql.planner.internal.fn.Agg +import org.partiql.planner.internal.fn.AggSignature +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorCount import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.INT64 -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_COUNT__ANY__INT64 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_COUNT__ANY__INT64 : Agg { override val signature: AggSignature = AggSignature( name = "count", diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggEvery.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggEvery.kt similarity index 63% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggEvery.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggEvery.kt index 6094fa33eb..529128214b 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggEvery.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggEvery.kt @@ -1,19 +1,18 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorEvery -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter +import org.partiql.planner.internal.fn.Agg +import org.partiql.planner.internal.fn.AggSignature +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorEvery import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_EVERY__BOOL__BOOL : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_EVERY__BOOL__BOOL : Agg { override val signature: AggSignature = AggSignature( name = "every", @@ -28,8 +27,8 @@ public object Agg_EVERY__BOOL__BOOL : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorEvery() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_EVERY__ANY__BOOL : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_EVERY__ANY__BOOL : Agg { override val signature: AggSignature = AggSignature( name = "every", diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggGroupAs.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggGroupAs.kt similarity index 57% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggGroupAs.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggGroupAs.kt index 74d29d84b4..acacf90491 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggGroupAs.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggGroupAs.kt @@ -1,18 +1,17 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorGroupAs -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter +import org.partiql.planner.internal.fn.Agg +import org.partiql.planner.internal.fn.AggSignature +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorGroupAs import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_GROUP_AS__ANY__ANY : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_GROUP_AS__ANY__ANY : Agg { override val signature: AggSignature = AggSignature( name = "group_as", diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggMax.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggMax.kt similarity index 73% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggMax.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggMax.kt index 7875a17811..b2148ba40a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggMax.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggMax.kt @@ -1,13 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorMax -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter +import org.partiql.planner.internal.fn.Agg +import org.partiql.planner.internal.fn.AggSignature +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorMax import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.DECIMAL_ARBITRARY @@ -19,8 +18,8 @@ import org.partiql.value.PartiQLValueType.INT32 import org.partiql.value.PartiQLValueType.INT64 import org.partiql.value.PartiQLValueType.INT8 -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MAX__INT8__INT8 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MAX__INT8__INT8 : Agg { override val signature: AggSignature = AggSignature( name = "max", @@ -35,8 +34,8 @@ public object Agg_MAX__INT8__INT8 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMax() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MAX__INT16__INT16 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MAX__INT16__INT16 : Agg { override val signature: AggSignature = AggSignature( name = "max", @@ -51,8 +50,8 @@ public object Agg_MAX__INT16__INT16 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMax() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MAX__INT32__INT32 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MAX__INT32__INT32 : Agg { override val signature: AggSignature = AggSignature( name = "max", @@ -67,8 +66,8 @@ public object Agg_MAX__INT32__INT32 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMax() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MAX__INT64__INT64 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MAX__INT64__INT64 : Agg { override val signature: AggSignature = AggSignature( name = "max", @@ -83,8 +82,8 @@ public object Agg_MAX__INT64__INT64 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMax() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MAX__INT__INT : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MAX__INT__INT : Agg { override val signature: AggSignature = AggSignature( name = "max", @@ -99,8 +98,8 @@ public object Agg_MAX__INT__INT : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMax() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MAX__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MAX__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Agg { override val signature: AggSignature = AggSignature( name = "max", @@ -115,8 +114,8 @@ public object Agg_MAX__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMax() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MAX__FLOAT32__FLOAT32 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MAX__FLOAT32__FLOAT32 : Agg { override val signature: AggSignature = AggSignature( name = "max", @@ -131,8 +130,8 @@ public object Agg_MAX__FLOAT32__FLOAT32 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMax() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MAX__FLOAT64__FLOAT64 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MAX__FLOAT64__FLOAT64 : Agg { override val signature: AggSignature = AggSignature( name = "max", @@ -147,8 +146,8 @@ public object Agg_MAX__FLOAT64__FLOAT64 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMax() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MAX__ANY__ANY : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MAX__ANY__ANY : Agg { override val signature: AggSignature = AggSignature( name = "max", diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggMin.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggMin.kt similarity index 73% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggMin.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggMin.kt index 9b4a30cb49..dfa2af13f1 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggMin.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggMin.kt @@ -1,13 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorMin -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter +import org.partiql.planner.internal.fn.Agg +import org.partiql.planner.internal.fn.AggSignature +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorMin import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.DECIMAL_ARBITRARY @@ -19,8 +18,8 @@ import org.partiql.value.PartiQLValueType.INT32 import org.partiql.value.PartiQLValueType.INT64 import org.partiql.value.PartiQLValueType.INT8 -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MIN__INT8__INT8 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MIN__INT8__INT8 : Agg { override val signature: AggSignature = AggSignature( name = "min", @@ -35,8 +34,8 @@ public object Agg_MIN__INT8__INT8 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMin() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MIN__INT16__INT16 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MIN__INT16__INT16 : Agg { override val signature: AggSignature = AggSignature( name = "min", @@ -51,8 +50,8 @@ public object Agg_MIN__INT16__INT16 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMin() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MIN__INT32__INT32 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MIN__INT32__INT32 : Agg { override val signature: AggSignature = AggSignature( name = "min", @@ -67,8 +66,8 @@ public object Agg_MIN__INT32__INT32 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMin() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MIN__INT64__INT64 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MIN__INT64__INT64 : Agg { override val signature: AggSignature = AggSignature( name = "min", @@ -83,8 +82,8 @@ public object Agg_MIN__INT64__INT64 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMin() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MIN__INT__INT : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MIN__INT__INT : Agg { override val signature: AggSignature = AggSignature( name = "min", @@ -99,8 +98,8 @@ public object Agg_MIN__INT__INT : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMin() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MIN__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MIN__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Agg { override val signature: AggSignature = AggSignature( name = "min", @@ -115,8 +114,8 @@ public object Agg_MIN__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMin() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MIN__FLOAT32__FLOAT32 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MIN__FLOAT32__FLOAT32 : Agg { override val signature: AggSignature = AggSignature( name = "min", @@ -131,8 +130,8 @@ public object Agg_MIN__FLOAT32__FLOAT32 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMin() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MIN__FLOAT64__FLOAT64 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MIN__FLOAT64__FLOAT64 : Agg { override val signature: AggSignature = AggSignature( name = "min", @@ -147,8 +146,8 @@ public object Agg_MIN__FLOAT64__FLOAT64 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorMin() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_MIN__ANY__ANY : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_MIN__ANY__ANY : Agg { override val signature: AggSignature = AggSignature( name = "min", diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggSome.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggSome.kt similarity index 63% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggSome.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggSome.kt index 62e76690f2..3a4eb6e67a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggSome.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggSome.kt @@ -1,19 +1,18 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorAnySome -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter +import org.partiql.planner.internal.fn.Agg +import org.partiql.planner.internal.fn.AggSignature +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorAnySome import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_SOME__BOOL__BOOL : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_SOME__BOOL__BOOL : Agg { override val signature: AggSignature = AggSignature( name = "some", @@ -28,8 +27,8 @@ public object Agg_SOME__BOOL__BOOL : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorAnySome() } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_SOME__ANY__BOOL : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_SOME__ANY__BOOL : Agg { override val signature: AggSignature = AggSignature( name = "some", diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggSum.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggSum.kt similarity index 73% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggSum.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggSum.kt index b65ae29a70..e34003157b 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/AggSum.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggSum.kt @@ -1,13 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorSum -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter +import org.partiql.planner.internal.fn.Agg +import org.partiql.planner.internal.fn.AggSignature +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorSum import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.DECIMAL_ARBITRARY @@ -19,8 +18,8 @@ import org.partiql.value.PartiQLValueType.INT32 import org.partiql.value.PartiQLValueType.INT64 import org.partiql.value.PartiQLValueType.INT8 -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_SUM__INT8__INT8 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_SUM__INT8__INT8 : Agg { override val signature: AggSignature = AggSignature( name = "sum", @@ -35,8 +34,8 @@ public object Agg_SUM__INT8__INT8 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorSum(INT8) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_SUM__INT16__INT16 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_SUM__INT16__INT16 : Agg { override val signature: AggSignature = AggSignature( name = "sum", @@ -51,8 +50,8 @@ public object Agg_SUM__INT16__INT16 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorSum(INT16) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_SUM__INT32__INT32 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_SUM__INT32__INT32 : Agg { override val signature: AggSignature = AggSignature( name = "sum", @@ -67,8 +66,8 @@ public object Agg_SUM__INT32__INT32 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorSum(INT32) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_SUM__INT64__INT64 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_SUM__INT64__INT64 : Agg { override val signature: AggSignature = AggSignature( name = "sum", @@ -83,8 +82,8 @@ public object Agg_SUM__INT64__INT64 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorSum(INT64) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_SUM__INT__INT : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_SUM__INT__INT : Agg { override val signature: AggSignature = AggSignature( name = "sum", @@ -99,8 +98,8 @@ public object Agg_SUM__INT__INT : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorSum(INT) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_SUM__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_SUM__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Agg { override val signature: AggSignature = AggSignature( name = "sum", @@ -115,8 +114,8 @@ public object Agg_SUM__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorSum(DECIMAL_ARBITRARY) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_SUM__FLOAT32__FLOAT32 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_SUM__FLOAT32__FLOAT32 : Agg { override val signature: AggSignature = AggSignature( name = "sum", @@ -131,8 +130,8 @@ public object Agg_SUM__FLOAT32__FLOAT32 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorSum(FLOAT32) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_SUM__FLOAT64__FLOAT64 : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_SUM__FLOAT64__FLOAT64 : Agg { override val signature: AggSignature = AggSignature( name = "sum", @@ -147,8 +146,8 @@ public object Agg_SUM__FLOAT64__FLOAT64 : Agg { override fun accumulator(): Agg.Accumulator = AccumulatorSum(FLOAT64) } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) -public object Agg_SUM__ANY__ANY : Agg { +@OptIn(PartiQLValueExperimental::class) +internal object Agg_SUM__ANY__ANY : Agg { override val signature: AggSignature = AggSignature( name = "sum", diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnAbs.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAbs.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnAbs.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAbs.kt index 984cd827d1..c85d15b69a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnAbs.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAbs.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Float32Value import org.partiql.value.Float64Value @@ -37,7 +37,8 @@ import org.partiql.value.intValue import kotlin.math.absoluteValue // TODO: When negate a negative value, we need to consider overflow -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) + +@OptIn(PartiQLValueExperimental::class) internal object Fn_ABS__INT8__INT8 : Fn { override val signature = FnSignature( @@ -54,7 +55,7 @@ internal object Fn_ABS__INT8__INT8 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_ABS__INT16__INT16 : Fn { override val signature = FnSignature( @@ -71,7 +72,7 @@ internal object Fn_ABS__INT16__INT16 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_ABS__INT32__INT32 : Fn { override val signature = FnSignature( @@ -88,7 +89,7 @@ internal object Fn_ABS__INT32__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_ABS__INT64__INT64 : Fn { override val signature = FnSignature( @@ -105,7 +106,7 @@ internal object Fn_ABS__INT64__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_ABS__INT__INT : Fn { override val signature = FnSignature( @@ -122,7 +123,7 @@ internal object Fn_ABS__INT__INT : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_ABS__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Fn { override val signature = FnSignature( @@ -139,7 +140,7 @@ internal object Fn_ABS__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_ABS__FLOAT32__FLOAT32 : Fn { override val signature = FnSignature( @@ -156,7 +157,7 @@ internal object Fn_ABS__FLOAT32__FLOAT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_ABS__FLOAT64__FLOAT64 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnAnd.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAnd.kt similarity index 81% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnAnd.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAnd.kt index 134328d5c5..40f15afb94 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnAnd.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAnd.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue import org.partiql.value.check -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_AND__BOOL_BOOL__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBetween.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBetween.kt similarity index 91% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBetween.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBetween.kt index 762ae4f01d..b65f5e1d7b 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBetween.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBetween.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ClobValue import org.partiql.value.DateValue import org.partiql.value.DecimalValue @@ -40,7 +40,7 @@ import org.partiql.value.TimestampValue import org.partiql.value.boolValue import org.partiql.value.check -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BETWEEN__INT8_INT8_INT8__BOOL : Fn { override val signature = FnSignature( @@ -63,7 +63,7 @@ internal object Fn_BETWEEN__INT8_INT8_INT8__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BETWEEN__INT16_INT16_INT16__BOOL : Fn { override val signature = FnSignature( @@ -86,7 +86,7 @@ internal object Fn_BETWEEN__INT16_INT16_INT16__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BETWEEN__INT32_INT32_INT32__BOOL : Fn { override val signature = FnSignature( @@ -109,7 +109,7 @@ internal object Fn_BETWEEN__INT32_INT32_INT32__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BETWEEN__INT64_INT64_INT64__BOOL : Fn { override val signature = FnSignature( @@ -132,7 +132,7 @@ internal object Fn_BETWEEN__INT64_INT64_INT64__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BETWEEN__INT_INT_INT__BOOL : Fn { override val signature = FnSignature( @@ -155,7 +155,7 @@ internal object Fn_BETWEEN__INT_INT_INT__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BETWEEN__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__BOOL : Fn { override val signature = FnSignature( @@ -178,7 +178,7 @@ internal object Fn_BETWEEN__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY_DECIMAL_ARBITRAR } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BETWEEN__FLOAT32_FLOAT32_FLOAT32__BOOL : Fn { override val signature = FnSignature( @@ -201,7 +201,7 @@ internal object Fn_BETWEEN__FLOAT32_FLOAT32_FLOAT32__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BETWEEN__FLOAT64_FLOAT64_FLOAT64__BOOL : Fn { override val signature = FnSignature( @@ -224,7 +224,7 @@ internal object Fn_BETWEEN__FLOAT64_FLOAT64_FLOAT64__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BETWEEN__STRING_STRING_STRING__BOOL : Fn { override val signature = FnSignature( @@ -247,7 +247,7 @@ internal object Fn_BETWEEN__STRING_STRING_STRING__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BETWEEN__SYMBOL_SYMBOL_SYMBOL__BOOL : Fn { override val signature = FnSignature( @@ -270,7 +270,7 @@ internal object Fn_BETWEEN__SYMBOL_SYMBOL_SYMBOL__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BETWEEN__CLOB_CLOB_CLOB__BOOL : Fn { override val signature = FnSignature( @@ -293,7 +293,7 @@ internal object Fn_BETWEEN__CLOB_CLOB_CLOB__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BETWEEN__DATE_DATE_DATE__BOOL : Fn { override val signature = FnSignature( @@ -316,7 +316,7 @@ internal object Fn_BETWEEN__DATE_DATE_DATE__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BETWEEN__TIME_TIME_TIME__BOOL : Fn { override val signature = FnSignature( @@ -339,7 +339,7 @@ internal object Fn_BETWEEN__TIME_TIME_TIME__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BETWEEN__TIMESTAMP_TIMESTAMP_TIMESTAMP__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBitLength.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitLength.kt similarity index 83% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBitLength.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitLength.kt index 67f0783cb6..856ee9cb1f 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBitLength.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitLength.kt @@ -1,9 +1,9 @@ -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ClobValue import org.partiql.value.Int32Value import org.partiql.value.PartiQLValue @@ -14,7 +14,8 @@ import org.partiql.value.check import org.partiql.value.int32Value // SQL spec section 6.17 contains -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) + +@OptIn(PartiQLValueExperimental::class) internal object Fn_BIT_LENGTH__STRING__INT32 : Fn { override val signature = FnSignature( @@ -34,7 +35,7 @@ internal object Fn_BIT_LENGTH__STRING__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BIT_LENGTH__SYMBOL__INT32 : Fn { override val signature = FnSignature( @@ -54,7 +55,7 @@ internal object Fn_BIT_LENGTH__SYMBOL__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BIT_LENGTH__CLOB__INT32 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBitwiseAnd.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitwiseAnd.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBitwiseAnd.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitwiseAnd.kt index cc70a36b2b..235f999f44 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnBitwiseAnd.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitwiseAnd.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int16Value import org.partiql.value.Int32Value import org.partiql.value.Int64Value @@ -27,7 +27,7 @@ import org.partiql.value.int8Value import org.partiql.value.intValue import kotlin.experimental.and -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BITWISE_AND__INT8_INT8__INT8 : Fn { override val signature = FnSignature( @@ -48,7 +48,7 @@ internal object Fn_BITWISE_AND__INT8_INT8__INT8 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BITWISE_AND__INT16_INT16__INT16 : Fn { override val signature = FnSignature( @@ -69,7 +69,7 @@ internal object Fn_BITWISE_AND__INT16_INT16__INT16 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BITWISE_AND__INT32_INT32__INT32 : Fn { override val signature = FnSignature( @@ -90,7 +90,7 @@ internal object Fn_BITWISE_AND__INT32_INT32__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BITWISE_AND__INT64_INT64__INT64 : Fn { override val signature = FnSignature( @@ -111,7 +111,7 @@ internal object Fn_BITWISE_AND__INT64_INT64__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_BITWISE_AND__INT_INT__INT : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCardinality.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCardinality.kt similarity index 83% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCardinality.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCardinality.kt index 367693790c..62934af09e 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCardinality.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCardinality.kt @@ -1,9 +1,9 @@ -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BagValue import org.partiql.value.ListValue import org.partiql.value.PartiQLValue @@ -14,7 +14,7 @@ import org.partiql.value.StructValue import org.partiql.value.check import org.partiql.value.int32Value -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_CARDINALITY__BAG__INT32 : Fn { override val signature = FnSignature( @@ -33,7 +33,7 @@ internal object Fn_CARDINALITY__BAG__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_CARDINALITY__LIST__INT32 : Fn { override val signature = FnSignature( @@ -52,7 +52,7 @@ internal object Fn_CARDINALITY__LIST__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_CARDINALITY__SEXP__INT32 : Fn { override val signature = FnSignature( @@ -71,7 +71,7 @@ internal object Fn_CARDINALITY__SEXP__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_CARDINALITY__STRUCT__INT32 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCharLength.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCharLength.kt similarity index 83% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCharLength.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCharLength.kt index 137888db1c..04fa1e2550 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCharLength.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCharLength.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ClobValue import org.partiql.value.Int32Value import org.partiql.value.PartiQLValue @@ -20,7 +20,7 @@ import org.partiql.value.SymbolValue import org.partiql.value.check import org.partiql.value.int32Value -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_CHAR_LENGTH__STRING__INT : Fn { override val signature = FnSignature( @@ -39,7 +39,7 @@ internal object Fn_CHAR_LENGTH__STRING__INT : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_CHAR_LENGTH__SYMBOL__INT : Fn { override val signature = FnSignature( @@ -58,7 +58,7 @@ internal object Fn_CHAR_LENGTH__SYMBOL__INT : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_CHAR_LENGTH__CLOB__INT : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCollAgg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCollAgg.kt similarity index 72% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCollAgg.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCollAgg.kt index 2ddcf13efb..391402b80d 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCollAgg.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCollAgg.kt @@ -1,28 +1,25 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.builtins.internal.Accumulator -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorAnySome -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorAvg -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorCount -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorEvery -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorMax -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorMin -import org.partiql.spi.connector.sql.builtins.internal.AccumulatorSum -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Agg +import org.partiql.planner.internal.fn.Fn +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature +import org.partiql.planner.internal.fn.builtins.internal.Accumulator +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorAnySome +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorAvg +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorCount +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorEvery +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorMax +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorMin +import org.partiql.planner.internal.fn.builtins.internal.AccumulatorSum import org.partiql.value.BagValue import org.partiql.value.PartiQLValue -import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType import org.partiql.value.check -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) internal abstract class Fn_COLL_AGG__BAG__ANY : Fn { abstract fun getAccumulator(): Agg.Accumulator diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnConcat.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnConcat.kt similarity index 85% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnConcat.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnConcat.kt index c670d758bb..91421ec3a9 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnConcat.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnConcat.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -20,7 +20,7 @@ import org.partiql.value.clobValue import org.partiql.value.stringValue import org.partiql.value.symbolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_CONCAT__STRING_STRING__STRING : Fn { override val signature = FnSignature( @@ -41,7 +41,7 @@ internal object Fn_CONCAT__STRING_STRING__STRING : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_CONCAT__SYMBOL_SYMBOL__SYMBOL : Fn { override val signature = FnSignature( @@ -62,7 +62,7 @@ internal object Fn_CONCAT__SYMBOL_SYMBOL__SYMBOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_CONCAT__CLOB_CLOB__CLOB : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCurrentDate.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentDate.kt similarity index 71% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCurrentDate.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentDate.kt index 191d508172..8a96d53731 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCurrentDate.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentDate.kt @@ -1,16 +1,16 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.DATE -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_CURRENT_DATE____DATE : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCurrentUser.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentUser.kt similarity index 71% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCurrentUser.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentUser.kt index 1aad0cba5b..0b6d269d8e 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnCurrentUser.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentUser.kt @@ -1,16 +1,16 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.STRING -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_CURRENT_USER____STRING : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddDay.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddDay.kt similarity index 86% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddDay.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddDay.kt index 7d00a4bb30..9db3cb5c3c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddDay.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddDay.kt @@ -1,14 +1,14 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DateValue import org.partiql.value.Int32Value import org.partiql.value.Int64Value @@ -25,7 +25,7 @@ import org.partiql.value.check import org.partiql.value.dateValue import org.partiql.value.timestampValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_DAY__INT32_DATE__DATE : Fn { override val signature = FnSignature( @@ -48,7 +48,7 @@ internal object Fn_DATE_ADD_DAY__INT32_DATE__DATE : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_DAY__INT64_DATE__DATE : Fn { override val signature = FnSignature( @@ -71,7 +71,7 @@ internal object Fn_DATE_ADD_DAY__INT64_DATE__DATE : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_DAY__INT_DATE__DATE : Fn { override val signature = FnSignature( @@ -89,14 +89,16 @@ internal object Fn_DATE_ADD_DAY__INT_DATE__DATE : Fn { val interval = args[0].check() val datetime = args[1].check() val datetimeValue = datetime.value!! - val intervalValue = try { interval.toInt64().value!! } catch (e: DataException) { + val intervalValue = try { + interval.toInt64().value!! + } catch (e: DataException) { throw TypeCheckException() } return dateValue(datetimeValue.plusDays(intervalValue)) } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_DAY__INT32_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -119,7 +121,7 @@ internal object Fn_DATE_ADD_DAY__INT32_TIMESTAMP__TIMESTAMP : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_DAY__INT64_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -142,7 +144,7 @@ internal object Fn_DATE_ADD_DAY__INT64_TIMESTAMP__TIMESTAMP : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_DAY__INT_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -160,7 +162,9 @@ internal object Fn_DATE_ADD_DAY__INT_TIMESTAMP__TIMESTAMP : Fn { val interval = args[0].check() val datetime = args[1].check() val datetimeValue = datetime.value!! - val intervalValue = try { interval.toInt64().value!! } catch (e: DataException) { + val intervalValue = try { + interval.toInt64().value!! + } catch (e: DataException) { throw TypeCheckException() } return timestampValue(datetimeValue.plusDays(intervalValue)) diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddHour.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddHour.kt similarity index 85% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddHour.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddHour.kt index 55198ae647..89f5d3a765 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddHour.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddHour.kt @@ -1,14 +1,14 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int32Value import org.partiql.value.Int64Value import org.partiql.value.IntValue @@ -25,7 +25,7 @@ import org.partiql.value.check import org.partiql.value.timeValue import org.partiql.value.timestampValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_HOUR__INT32_TIME__TIME : Fn { override val signature = FnSignature( @@ -48,7 +48,7 @@ internal object Fn_DATE_ADD_HOUR__INT32_TIME__TIME : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_HOUR__INT64_TIME__TIME : Fn { override val signature = FnSignature( @@ -71,7 +71,7 @@ internal object Fn_DATE_ADD_HOUR__INT64_TIME__TIME : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_HOUR__INT_TIME__TIME : Fn { override val signature = FnSignature( @@ -89,12 +89,16 @@ internal object Fn_DATE_ADD_HOUR__INT_TIME__TIME : Fn { val interval = args[0].check() val datetime = args[1].check() val datetimeValue = datetime.value!! - val intervalValue = try { interval.toInt64().value!! } catch (e: DataException) { throw TypeCheckException() } + val intervalValue = try { + interval.toInt64().value!! + } catch (e: DataException) { + throw TypeCheckException() + } return timeValue(datetimeValue.plusHours(intervalValue)) } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_HOUR__INT32_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -117,7 +121,7 @@ internal object Fn_DATE_ADD_HOUR__INT32_TIMESTAMP__TIMESTAMP : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_HOUR__INT64_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -140,7 +144,7 @@ internal object Fn_DATE_ADD_HOUR__INT64_TIMESTAMP__TIMESTAMP : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_HOUR__INT_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -158,7 +162,11 @@ internal object Fn_DATE_ADD_HOUR__INT_TIMESTAMP__TIMESTAMP : Fn { val interval = args[0].check() val datetime = args[1].check() val datetimeValue = datetime.value!! - val intervalValue = try { interval.toInt64().value!! } catch (e: DataException) { throw TypeCheckException() } + val intervalValue = try { + interval.toInt64().value!! + } catch (e: DataException) { + throw TypeCheckException() + } return timestampValue(datetimeValue.plusHours(intervalValue)) } } diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddMinute.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMinute.kt similarity index 85% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddMinute.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMinute.kt index e6ddf23bca..ef97829121 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddMinute.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMinute.kt @@ -1,14 +1,14 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int32Value import org.partiql.value.Int64Value import org.partiql.value.IntValue @@ -25,7 +25,7 @@ import org.partiql.value.check import org.partiql.value.timeValue import org.partiql.value.timestampValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_MINUTE__INT32_TIME__TIME : Fn { override val signature = FnSignature( @@ -48,7 +48,7 @@ internal object Fn_DATE_ADD_MINUTE__INT32_TIME__TIME : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_MINUTE__INT64_TIME__TIME : Fn { override val signature = FnSignature( @@ -71,7 +71,7 @@ internal object Fn_DATE_ADD_MINUTE__INT64_TIME__TIME : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_MINUTE__INT_TIME__TIME : Fn { override val signature = FnSignature( @@ -89,12 +89,16 @@ internal object Fn_DATE_ADD_MINUTE__INT_TIME__TIME : Fn { val interval = args[0].check() val datetime = args[1].check() val datetimeValue = datetime.value!! - val intervalValue = try { interval.toInt64().value!! } catch (e: DataException) { throw TypeCheckException() } + val intervalValue = try { + interval.toInt64().value!! + } catch (e: DataException) { + throw TypeCheckException() + } return timeValue(datetimeValue.plusMinutes(intervalValue)) } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_MINUTE__INT32_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -117,7 +121,7 @@ internal object Fn_DATE_ADD_MINUTE__INT32_TIMESTAMP__TIMESTAMP : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_MINUTE__INT64_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -140,7 +144,7 @@ internal object Fn_DATE_ADD_MINUTE__INT64_TIMESTAMP__TIMESTAMP : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_MINUTE__INT_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -158,7 +162,11 @@ internal object Fn_DATE_ADD_MINUTE__INT_TIMESTAMP__TIMESTAMP : Fn { val interval = args[0].check() val datetime = args[1].check() val datetimeValue = datetime.value!! - val intervalValue = try { interval.toInt64().value!! } catch (e: DataException) { throw TypeCheckException() } + val intervalValue = try { + interval.toInt64().value!! + } catch (e: DataException) { + throw TypeCheckException() + } return timestampValue(datetimeValue.plusMinutes(intervalValue)) } } diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddMonth.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMonth.kt similarity index 85% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddMonth.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMonth.kt index c44a67eaeb..580267eda1 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddMonth.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMonth.kt @@ -1,14 +1,14 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DateValue import org.partiql.value.Int32Value import org.partiql.value.Int64Value @@ -25,7 +25,7 @@ import org.partiql.value.check import org.partiql.value.dateValue import org.partiql.value.timestampValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_MONTH__INT32_DATE__DATE : Fn { override val signature = FnSignature( @@ -48,7 +48,7 @@ internal object Fn_DATE_ADD_MONTH__INT32_DATE__DATE : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_MONTH__INT64_DATE__DATE : Fn { override val signature = FnSignature( @@ -71,7 +71,7 @@ internal object Fn_DATE_ADD_MONTH__INT64_DATE__DATE : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_MONTH__INT_DATE__DATE : Fn { override val signature = FnSignature( @@ -89,12 +89,16 @@ internal object Fn_DATE_ADD_MONTH__INT_DATE__DATE : Fn { val interval = args[0].check() val datetime = args[1].check() val datetimeValue = datetime.value!! - val intervalValue = try { interval.toInt64().value!! } catch (e: DataException) { throw TypeCheckException() } + val intervalValue = try { + interval.toInt64().value!! + } catch (e: DataException) { + throw TypeCheckException() + } return dateValue(datetimeValue.plusMonths(intervalValue)) } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_MONTH__INT32_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -117,7 +121,7 @@ internal object Fn_DATE_ADD_MONTH__INT32_TIMESTAMP__TIMESTAMP : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_MONTH__INT64_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -140,7 +144,7 @@ internal object Fn_DATE_ADD_MONTH__INT64_TIMESTAMP__TIMESTAMP : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_MONTH__INT_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -158,7 +162,11 @@ internal object Fn_DATE_ADD_MONTH__INT_TIMESTAMP__TIMESTAMP : Fn { val interval = args[0].check() val datetime = args[1].check() val datetimeValue = datetime.value!! - val intervalValue = try { interval.toInt64().value!! } catch (e: DataException) { throw TypeCheckException() } + val intervalValue = try { + interval.toInt64().value!! + } catch (e: DataException) { + throw TypeCheckException() + } return timestampValue(datetimeValue.plusMonths(intervalValue)) } } diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddSecond.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddSecond.kt similarity index 85% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddSecond.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddSecond.kt index cd56c9058f..318f12efdb 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddSecond.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddSecond.kt @@ -1,14 +1,14 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int32Value import org.partiql.value.Int64Value import org.partiql.value.IntValue @@ -25,7 +25,7 @@ import org.partiql.value.check import org.partiql.value.timeValue import org.partiql.value.timestampValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_SECOND__INT32_TIME__TIME : Fn { override val signature = FnSignature( @@ -48,7 +48,7 @@ internal object Fn_DATE_ADD_SECOND__INT32_TIME__TIME : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_SECOND__INT64_TIME__TIME : Fn { override val signature = FnSignature( @@ -71,7 +71,7 @@ internal object Fn_DATE_ADD_SECOND__INT64_TIME__TIME : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_SECOND__INT_TIME__TIME : Fn { override val signature = FnSignature( @@ -89,12 +89,16 @@ internal object Fn_DATE_ADD_SECOND__INT_TIME__TIME : Fn { val interval = args[0].check() val datetime = args[1].check() val datetimeValue = datetime.value!! - val intervalValue = try { interval.toInt64().value!! } catch (e: DataException) { throw TypeCheckException() } + val intervalValue = try { + interval.toInt64().value!! + } catch (e: DataException) { + throw TypeCheckException() + } return timeValue(datetimeValue.plusSeconds(intervalValue)) } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_SECOND__INT32_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -117,7 +121,7 @@ internal object Fn_DATE_ADD_SECOND__INT32_TIMESTAMP__TIMESTAMP : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_SECOND__INT64_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -140,7 +144,7 @@ internal object Fn_DATE_ADD_SECOND__INT64_TIMESTAMP__TIMESTAMP : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_SECOND__INT_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -158,7 +162,11 @@ internal object Fn_DATE_ADD_SECOND__INT_TIMESTAMP__TIMESTAMP : Fn { val interval = args[0].check() val datetime = args[1].check() val datetimeValue = datetime.value!! - val intervalValue = try { interval.toInt64().value!! } catch (e: DataException) { throw TypeCheckException() } + val intervalValue = try { + interval.toInt64().value!! + } catch (e: DataException) { + throw TypeCheckException() + } return timestampValue(datetimeValue.plusSeconds(intervalValue)) } } diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddYear.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddYear.kt similarity index 85% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddYear.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddYear.kt index 251d4f0a9d..1dc8602523 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateAddYear.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddYear.kt @@ -1,14 +1,14 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DateValue import org.partiql.value.Int32Value import org.partiql.value.Int64Value @@ -25,7 +25,7 @@ import org.partiql.value.check import org.partiql.value.dateValue import org.partiql.value.timestampValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_YEAR__INT32_DATE__DATE : Fn { override val signature = FnSignature( @@ -48,7 +48,7 @@ internal object Fn_DATE_ADD_YEAR__INT32_DATE__DATE : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_YEAR__INT64_DATE__DATE : Fn { override val signature = FnSignature( @@ -71,7 +71,7 @@ internal object Fn_DATE_ADD_YEAR__INT64_DATE__DATE : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_YEAR__INT_DATE__DATE : Fn { override val signature = FnSignature( @@ -89,12 +89,16 @@ internal object Fn_DATE_ADD_YEAR__INT_DATE__DATE : Fn { val interval = args[0].check() val datetime = args[1].check() val datetimeValue = datetime.value!! - val intervalValue = try { interval.toInt64().value!! } catch (e: DataException) { throw TypeCheckException() } + val intervalValue = try { + interval.toInt64().value!! + } catch (e: DataException) { + throw TypeCheckException() + } return dateValue(datetimeValue.plusYears(intervalValue)) } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_YEAR__INT32_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -117,7 +121,7 @@ internal object Fn_DATE_ADD_YEAR__INT32_TIMESTAMP__TIMESTAMP : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_YEAR__INT64_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -140,7 +144,7 @@ internal object Fn_DATE_ADD_YEAR__INT64_TIMESTAMP__TIMESTAMP : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_ADD_YEAR__INT_TIMESTAMP__TIMESTAMP : Fn { override val signature = FnSignature( @@ -158,7 +162,11 @@ internal object Fn_DATE_ADD_YEAR__INT_TIMESTAMP__TIMESTAMP : Fn { val interval = args[0].check() val datetime = args[1].check() val datetimeValue = datetime.value!! - val intervalValue = try { interval.toInt64().value!! } catch (e: DataException) { throw TypeCheckException() } + val intervalValue = try { + interval.toInt64().value!! + } catch (e: DataException) { + throw TypeCheckException() + } return timestampValue(datetimeValue.plusYears(intervalValue)) } } diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffDay.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffDay.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffDay.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffDay.kt index 129dbce9db..77a026730b 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffDay.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffDay.kt @@ -1,19 +1,19 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.DATE import org.partiql.value.PartiQLValueType.INT64 import org.partiql.value.PartiQLValueType.TIMESTAMP -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_DIFF_DAY__DATE_DATE__INT64 : Fn { override val signature = FnSignature( @@ -32,7 +32,7 @@ internal object Fn_DATE_DIFF_DAY__DATE_DATE__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_DIFF_DAY__TIMESTAMP_TIMESTAMP__INT64 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffHour.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffHour.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffHour.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffHour.kt index b6b85d47bb..90ef086feb 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffHour.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffHour.kt @@ -1,19 +1,19 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.INT64 import org.partiql.value.PartiQLValueType.TIME import org.partiql.value.PartiQLValueType.TIMESTAMP -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_DIFF_HOUR__TIME_TIME__INT64 : Fn { override val signature = FnSignature( @@ -32,7 +32,7 @@ internal object Fn_DATE_DIFF_HOUR__TIME_TIME__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_DIFF_HOUR__TIMESTAMP_TIMESTAMP__INT64 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffMinute.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMinute.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffMinute.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMinute.kt index df56be84ea..f18fd67a99 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffMinute.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMinute.kt @@ -1,19 +1,19 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.INT64 import org.partiql.value.PartiQLValueType.TIME import org.partiql.value.PartiQLValueType.TIMESTAMP -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_DIFF_MINUTE__TIME_TIME__INT64 : Fn { override val signature = FnSignature( @@ -32,7 +32,7 @@ internal object Fn_DATE_DIFF_MINUTE__TIME_TIME__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_DIFF_MINUTE__TIMESTAMP_TIMESTAMP__INT64 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffMonth.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMonth.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffMonth.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMonth.kt index 50d30fe7dc..e9704c516d 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffMonth.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMonth.kt @@ -1,19 +1,19 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.DATE import org.partiql.value.PartiQLValueType.INT64 import org.partiql.value.PartiQLValueType.TIMESTAMP -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_DIFF_MONTH__DATE_DATE__INT64 : Fn { override val signature = FnSignature( @@ -32,7 +32,7 @@ internal object Fn_DATE_DIFF_MONTH__DATE_DATE__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_DIFF_MONTH__TIMESTAMP_TIMESTAMP__INT64 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffSecond.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffSecond.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffSecond.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffSecond.kt index 444d0911ca..194c848c7a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffSecond.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffSecond.kt @@ -1,19 +1,19 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.INT64 import org.partiql.value.PartiQLValueType.TIME import org.partiql.value.PartiQLValueType.TIMESTAMP -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_DIFF_SECOND__TIME_TIME__INT64 : Fn { override val signature = FnSignature( @@ -32,7 +32,7 @@ internal object Fn_DATE_DIFF_SECOND__TIME_TIME__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_DIFF_SECOND__TIMESTAMP_TIMESTAMP__INT64 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffYear.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffYear.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffYear.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffYear.kt index 8ab1d361bd..75c07249a7 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDateDiffYear.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffYear.kt @@ -1,19 +1,19 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.DATE import org.partiql.value.PartiQLValueType.INT64 import org.partiql.value.PartiQLValueType.TIMESTAMP -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_DIFF_YEAR__DATE_DATE__INT64 : Fn { override val signature = FnSignature( @@ -32,7 +32,7 @@ internal object Fn_DATE_DIFF_YEAR__DATE_DATE__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DATE_DIFF_YEAR__TIMESTAMP_TIMESTAMP__INT64 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDivide.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDivide.kt similarity index 89% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDivide.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDivide.kt index 8abe84bf60..9ebbcdcb5b 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnDivide.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDivide.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Float32Value import org.partiql.value.Float64Value @@ -36,7 +36,7 @@ import org.partiql.value.int8Value import org.partiql.value.intValue // TODO: Handle Overflow -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DIVIDE__INT8_INT8__INT8 : Fn { override val signature = FnSignature( @@ -57,7 +57,7 @@ internal object Fn_DIVIDE__INT8_INT8__INT8 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DIVIDE__INT16_INT16__INT16 : Fn { override val signature = FnSignature( @@ -78,7 +78,7 @@ internal object Fn_DIVIDE__INT16_INT16__INT16 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DIVIDE__INT32_INT32__INT32 : Fn { override val signature = FnSignature( @@ -99,7 +99,7 @@ internal object Fn_DIVIDE__INT32_INT32__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DIVIDE__INT64_INT64__INT64 : Fn { override val signature = FnSignature( @@ -120,7 +120,7 @@ internal object Fn_DIVIDE__INT64_INT64__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DIVIDE__INT_INT__INT : Fn { override val signature = FnSignature( @@ -141,7 +141,7 @@ internal object Fn_DIVIDE__INT_INT__INT : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DIVIDE__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Fn { override val signature = FnSignature( @@ -162,7 +162,7 @@ internal object Fn_DIVIDE__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__DECIMAL_ARBITRAR } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DIVIDE__FLOAT32_FLOAT32__FLOAT32 : Fn { override val signature = FnSignature( @@ -183,7 +183,7 @@ internal object Fn_DIVIDE__FLOAT32_FLOAT32__FLOAT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_DIVIDE__FLOAT64_FLOAT64__FLOAT64 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnEq.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnEq.kt similarity index 81% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnEq.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnEq.kt index aeedd74a83..468ba01a44 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnEq.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnEq.kt @@ -1,17 +1,16 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL -import org.partiql.value.PartiQLValueType.MISSING import org.partiql.value.boolValue /** @@ -28,7 +27,7 @@ import org.partiql.value.boolValue * TODO: The PartiQL Specification needs to clearly define the semantics of MISSING. That being said, this implementation * follows the existing conformance tests and SQL:1999. */ -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_EQ__ANY_ANY__BOOL : Fn { private val comparator = PartiQLValue.comparator() @@ -49,7 +48,7 @@ internal object Fn_EQ__ANY_ANY__BOOL : Fn { override fun invoke(args: Array): PartiQLValue { val lhs = args[0] val rhs = args[1] - if (lhs.type == MISSING || rhs.type == MISSING) { + if (lhs.type == ANY || rhs.type == ANY) { return boolValue(null) } return boolValue(comparator.compare(lhs, rhs) == 0) diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/exts/FnExists.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExists.kt similarity index 84% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/exts/FnExists.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExists.kt index 43fe1084d5..ba4b75ff68 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/exts/FnExists.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExists.kt @@ -1,9 +1,8 @@ -package org.partiql.planner.internal.fn.sql.exts +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BagValue import org.partiql.value.ListValue import org.partiql.value.PartiQLValue @@ -14,7 +13,7 @@ import org.partiql.value.StructValue import org.partiql.value.boolValue import org.partiql.value.check -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXISTS__BAG__BOOL : Fn { override val signature = FnSignature( @@ -34,7 +33,7 @@ internal object Fn_EXISTS__BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXISTS__LIST__BOOL : Fn { override val signature = FnSignature( @@ -54,7 +53,7 @@ internal object Fn_EXISTS__LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXISTS__SEXP__BOOL : Fn { override val signature = FnSignature( @@ -74,7 +73,7 @@ internal object Fn_EXISTS__SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXISTS__STRUCT__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnExtract.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExtract.kt similarity index 88% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnExtract.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExtract.kt index 7387e52409..5060d6ee95 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnExtract.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExtract.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DateValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -25,7 +25,8 @@ import org.partiql.value.int32Value // // Extract Year // -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) + +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_YEAR__DATE__INT32 : Fn { override val signature = FnSignature( @@ -44,7 +45,7 @@ internal object Fn_EXTRACT_YEAR__DATE__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_YEAR__TIMESTAMP__INT32 : Fn { override val signature = FnSignature( @@ -66,7 +67,8 @@ internal object Fn_EXTRACT_YEAR__TIMESTAMP__INT32 : Fn { // // Extract Month // -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) + +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_MONTH__DATE__INT32 : Fn { override val signature = FnSignature( @@ -85,7 +87,7 @@ internal object Fn_EXTRACT_MONTH__DATE__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_MONTH__TIMESTAMP__INT32 : Fn { override val signature = FnSignature( @@ -108,7 +110,7 @@ internal object Fn_EXTRACT_MONTH__TIMESTAMP__INT32 : Fn { // Extract Day // -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_DAY__DATE__INT32 : Fn { override val signature = FnSignature( @@ -127,7 +129,7 @@ internal object Fn_EXTRACT_DAY__DATE__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_DAY__TIMESTAMP__INT32 : Fn { override val signature = FnSignature( @@ -149,7 +151,8 @@ internal object Fn_EXTRACT_DAY__TIMESTAMP__INT32 : Fn { // // Extract Hour // -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) + +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_HOUR__TIME__INT32 : Fn { override val signature = FnSignature( @@ -168,7 +171,7 @@ internal object Fn_EXTRACT_HOUR__TIME__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_HOUR__TIMESTAMP__INT32 : Fn { override val signature = FnSignature( @@ -190,7 +193,8 @@ internal object Fn_EXTRACT_HOUR__TIMESTAMP__INT32 : Fn { // // Extract Minute // -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) + +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_MINUTE__TIME__INT32 : Fn { override val signature = FnSignature( @@ -209,7 +213,7 @@ internal object Fn_EXTRACT_MINUTE__TIME__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_MINUTE__TIMESTAMP__INT32 : Fn { override val signature = FnSignature( @@ -231,7 +235,8 @@ internal object Fn_EXTRACT_MINUTE__TIMESTAMP__INT32 : Fn { // // Extract Second // -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) + +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_SECOND__TIME__DECIMAL_ARBITRARY : Fn { override val signature = FnSignature( @@ -250,7 +255,7 @@ internal object Fn_EXTRACT_SECOND__TIME__DECIMAL_ARBITRARY : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_SECOND__TIMESTAMP__DECIMAL_ARBITRARY : Fn { override val signature = FnSignature( @@ -272,7 +277,8 @@ internal object Fn_EXTRACT_SECOND__TIMESTAMP__DECIMAL_ARBITRARY : Fn { // // Extract Timezone Hour // -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) + +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_TIMEZONE_HOUR__TIME__INT32 : Fn { override val signature = FnSignature( @@ -295,7 +301,7 @@ internal object Fn_EXTRACT_TIMEZONE_HOUR__TIME__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_TIMEZONE_HOUR__TIMESTAMP__INT32 : Fn { override val signature = FnSignature( @@ -321,7 +327,8 @@ internal object Fn_EXTRACT_TIMEZONE_HOUR__TIMESTAMP__INT32 : Fn { // // Extract Timezone Minute // -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) + +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_TIMEZONE_MINUTE__TIME__INT32 : Fn { override val signature = FnSignature( @@ -344,7 +351,7 @@ internal object Fn_EXTRACT_TIMEZONE_MINUTE__TIME__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_TIMEZONE_MINUTE__TIMESTAMP__INT32 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnGt.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGt.kt similarity index 89% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnGt.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGt.kt index 501b51147c..76c9b9f233 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnGt.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGt.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.DateValue import org.partiql.value.DecimalValue @@ -40,7 +40,7 @@ import org.partiql.value.TimestampValue import org.partiql.value.boolValue import org.partiql.value.check -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GT__INT8_INT8__BOOL : Fn { override val signature = FnSignature( @@ -61,7 +61,7 @@ internal object Fn_GT__INT8_INT8__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GT__INT16_INT16__BOOL : Fn { override val signature = FnSignature( @@ -82,7 +82,7 @@ internal object Fn_GT__INT16_INT16__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GT__INT32_INT32__BOOL : Fn { override val signature = FnSignature( @@ -103,7 +103,7 @@ internal object Fn_GT__INT32_INT32__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GT__INT64_INT64__BOOL : Fn { override val signature = FnSignature( @@ -124,7 +124,7 @@ internal object Fn_GT__INT64_INT64__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GT__INT_INT__BOOL : Fn { override val signature = FnSignature( @@ -145,7 +145,7 @@ internal object Fn_GT__INT_INT__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GT__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__BOOL : Fn { override val signature = FnSignature( @@ -166,7 +166,7 @@ internal object Fn_GT__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GT__FLOAT32_FLOAT32__BOOL : Fn { override val signature = FnSignature( @@ -187,7 +187,7 @@ internal object Fn_GT__FLOAT32_FLOAT32__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GT__FLOAT64_FLOAT64__BOOL : Fn { override val signature = FnSignature( @@ -208,7 +208,7 @@ internal object Fn_GT__FLOAT64_FLOAT64__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GT__STRING_STRING__BOOL : Fn { override val signature = FnSignature( @@ -229,7 +229,7 @@ internal object Fn_GT__STRING_STRING__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GT__SYMBOL_SYMBOL__BOOL : Fn { override val signature = FnSignature( @@ -250,7 +250,7 @@ internal object Fn_GT__SYMBOL_SYMBOL__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GT__DATE_DATE__BOOL : Fn { override val signature = FnSignature( @@ -271,7 +271,7 @@ internal object Fn_GT__DATE_DATE__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GT__TIME_TIME__BOOL : Fn { override val signature = FnSignature( @@ -292,7 +292,7 @@ internal object Fn_GT__TIME_TIME__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GT__TIMESTAMP_TIMESTAMP__BOOL : Fn { override val signature = FnSignature( @@ -313,7 +313,7 @@ internal object Fn_GT__TIMESTAMP_TIMESTAMP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GT__BOOL_BOOL__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnGte.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGte.kt similarity index 89% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnGte.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGte.kt index e3de57f7ef..57d1bac674 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnGte.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGte.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.DateValue import org.partiql.value.DecimalValue @@ -40,7 +40,7 @@ import org.partiql.value.TimestampValue import org.partiql.value.boolValue import org.partiql.value.check -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GTE__INT8_INT8__BOOL : Fn { override val signature = FnSignature( @@ -61,7 +61,7 @@ internal object Fn_GTE__INT8_INT8__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GTE__INT16_INT16__BOOL : Fn { override val signature = FnSignature( @@ -82,7 +82,7 @@ internal object Fn_GTE__INT16_INT16__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GTE__INT32_INT32__BOOL : Fn { override val signature = FnSignature( @@ -103,7 +103,7 @@ internal object Fn_GTE__INT32_INT32__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GTE__INT64_INT64__BOOL : Fn { override val signature = FnSignature( @@ -124,7 +124,7 @@ internal object Fn_GTE__INT64_INT64__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GTE__INT_INT__BOOL : Fn { override val signature = FnSignature( @@ -145,7 +145,7 @@ internal object Fn_GTE__INT_INT__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GTE__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__BOOL : Fn { override val signature = FnSignature( @@ -166,7 +166,7 @@ internal object Fn_GTE__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GTE__FLOAT32_FLOAT32__BOOL : Fn { override val signature = FnSignature( @@ -187,7 +187,7 @@ internal object Fn_GTE__FLOAT32_FLOAT32__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GTE__FLOAT64_FLOAT64__BOOL : Fn { override val signature = FnSignature( @@ -208,7 +208,7 @@ internal object Fn_GTE__FLOAT64_FLOAT64__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GTE__STRING_STRING__BOOL : Fn { override val signature = FnSignature( @@ -229,7 +229,7 @@ internal object Fn_GTE__STRING_STRING__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GTE__SYMBOL_SYMBOL__BOOL : Fn { override val signature = FnSignature( @@ -250,7 +250,7 @@ internal object Fn_GTE__SYMBOL_SYMBOL__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GTE__DATE_DATE__BOOL : Fn { override val signature = FnSignature( @@ -271,7 +271,7 @@ internal object Fn_GTE__DATE_DATE__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GTE__TIME_TIME__BOOL : Fn { override val signature = FnSignature( @@ -292,7 +292,7 @@ internal object Fn_GTE__TIME_TIME__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GTE__TIMESTAMP_TIMESTAMP__BOOL : Fn { override val signature = FnSignature( @@ -313,7 +313,7 @@ internal object Fn_GTE__TIMESTAMP_TIMESTAMP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_GTE__BOOL_BOOL__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnInCollection.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnInCollection.kt similarity index 92% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnInCollection.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnInCollection.kt index 03d94fdef4..0cf8d14089 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnInCollection.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnInCollection.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BagValue import org.partiql.value.BinaryValue import org.partiql.value.BlobValue @@ -62,7 +62,7 @@ import org.partiql.value.TimestampValue import org.partiql.value.boolValue import org.partiql.value.check -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__ANY_BAG__BOOL : Fn { override val signature = FnSignature( @@ -90,7 +90,7 @@ internal object Fn_IN_COLLECTION__ANY_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__ANY_LIST__BOOL : Fn { override val signature = FnSignature( @@ -118,7 +118,7 @@ internal object Fn_IN_COLLECTION__ANY_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__ANY_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -146,7 +146,7 @@ internal object Fn_IN_COLLECTION__ANY_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__BOOL_BAG__BOOL : Fn { override val signature = FnSignature( @@ -174,7 +174,7 @@ internal object Fn_IN_COLLECTION__BOOL_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__BOOL_LIST__BOOL : Fn { override val signature = FnSignature( @@ -202,7 +202,7 @@ internal object Fn_IN_COLLECTION__BOOL_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__BOOL_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -230,7 +230,7 @@ internal object Fn_IN_COLLECTION__BOOL_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INT8_BAG__BOOL : Fn { override val signature = FnSignature( @@ -258,7 +258,7 @@ internal object Fn_IN_COLLECTION__INT8_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INT8_LIST__BOOL : Fn { override val signature = FnSignature( @@ -286,7 +286,7 @@ internal object Fn_IN_COLLECTION__INT8_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INT8_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -314,7 +314,7 @@ internal object Fn_IN_COLLECTION__INT8_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INT16_BAG__BOOL : Fn { override val signature = FnSignature( @@ -342,7 +342,7 @@ internal object Fn_IN_COLLECTION__INT16_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INT16_LIST__BOOL : Fn { override val signature = FnSignature( @@ -370,7 +370,7 @@ internal object Fn_IN_COLLECTION__INT16_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INT16_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -398,7 +398,7 @@ internal object Fn_IN_COLLECTION__INT16_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INT32_BAG__BOOL : Fn { override val signature = FnSignature( @@ -426,7 +426,7 @@ internal object Fn_IN_COLLECTION__INT32_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INT32_LIST__BOOL : Fn { override val signature = FnSignature( @@ -454,7 +454,7 @@ internal object Fn_IN_COLLECTION__INT32_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INT32_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -482,7 +482,7 @@ internal object Fn_IN_COLLECTION__INT32_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INT64_BAG__BOOL : Fn { override val signature = FnSignature( @@ -510,7 +510,7 @@ internal object Fn_IN_COLLECTION__INT64_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INT64_LIST__BOOL : Fn { override val signature = FnSignature( @@ -538,7 +538,7 @@ internal object Fn_IN_COLLECTION__INT64_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INT64_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -566,7 +566,7 @@ internal object Fn_IN_COLLECTION__INT64_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INT_BAG__BOOL : Fn { override val signature = FnSignature( @@ -594,7 +594,7 @@ internal object Fn_IN_COLLECTION__INT_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INT_LIST__BOOL : Fn { override val signature = FnSignature( @@ -622,7 +622,7 @@ internal object Fn_IN_COLLECTION__INT_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INT_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -650,7 +650,7 @@ internal object Fn_IN_COLLECTION__INT_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__DECIMAL_BAG__BOOL : Fn { override val signature = FnSignature( @@ -678,7 +678,7 @@ internal object Fn_IN_COLLECTION__DECIMAL_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__DECIMAL_LIST__BOOL : Fn { override val signature = FnSignature( @@ -706,7 +706,7 @@ internal object Fn_IN_COLLECTION__DECIMAL_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__DECIMAL_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -734,7 +734,7 @@ internal object Fn_IN_COLLECTION__DECIMAL_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__DECIMAL_ARBITRARY_BAG__BOOL : Fn { override val signature = FnSignature( @@ -762,7 +762,7 @@ internal object Fn_IN_COLLECTION__DECIMAL_ARBITRARY_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__DECIMAL_ARBITRARY_LIST__BOOL : Fn { override val signature = FnSignature( @@ -790,7 +790,7 @@ internal object Fn_IN_COLLECTION__DECIMAL_ARBITRARY_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__DECIMAL_ARBITRARY_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -818,7 +818,7 @@ internal object Fn_IN_COLLECTION__DECIMAL_ARBITRARY_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__FLOAT32_BAG__BOOL : Fn { override val signature = FnSignature( @@ -846,7 +846,7 @@ internal object Fn_IN_COLLECTION__FLOAT32_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__FLOAT32_LIST__BOOL : Fn { override val signature = FnSignature( @@ -874,7 +874,7 @@ internal object Fn_IN_COLLECTION__FLOAT32_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__FLOAT32_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -902,7 +902,7 @@ internal object Fn_IN_COLLECTION__FLOAT32_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__FLOAT64_BAG__BOOL : Fn { override val signature = FnSignature( @@ -930,7 +930,7 @@ internal object Fn_IN_COLLECTION__FLOAT64_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__FLOAT64_LIST__BOOL : Fn { override val signature = FnSignature( @@ -958,7 +958,7 @@ internal object Fn_IN_COLLECTION__FLOAT64_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__FLOAT64_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -986,7 +986,7 @@ internal object Fn_IN_COLLECTION__FLOAT64_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__CHAR_BAG__BOOL : Fn { override val signature = FnSignature( @@ -1014,7 +1014,7 @@ internal object Fn_IN_COLLECTION__CHAR_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__CHAR_LIST__BOOL : Fn { override val signature = FnSignature( @@ -1042,7 +1042,7 @@ internal object Fn_IN_COLLECTION__CHAR_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__CHAR_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -1070,7 +1070,7 @@ internal object Fn_IN_COLLECTION__CHAR_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__STRING_BAG__BOOL : Fn { override val signature = FnSignature( @@ -1098,7 +1098,7 @@ internal object Fn_IN_COLLECTION__STRING_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__STRING_LIST__BOOL : Fn { override val signature = FnSignature( @@ -1126,7 +1126,7 @@ internal object Fn_IN_COLLECTION__STRING_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__STRING_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -1154,7 +1154,7 @@ internal object Fn_IN_COLLECTION__STRING_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__SYMBOL_BAG__BOOL : Fn { override val signature = FnSignature( @@ -1182,7 +1182,7 @@ internal object Fn_IN_COLLECTION__SYMBOL_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__SYMBOL_LIST__BOOL : Fn { override val signature = FnSignature( @@ -1210,7 +1210,7 @@ internal object Fn_IN_COLLECTION__SYMBOL_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__SYMBOL_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -1238,7 +1238,7 @@ internal object Fn_IN_COLLECTION__SYMBOL_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__BINARY_BAG__BOOL : Fn { override val signature = FnSignature( @@ -1266,7 +1266,7 @@ internal object Fn_IN_COLLECTION__BINARY_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__BINARY_LIST__BOOL : Fn { override val signature = FnSignature( @@ -1294,7 +1294,7 @@ internal object Fn_IN_COLLECTION__BINARY_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__BINARY_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -1322,7 +1322,7 @@ internal object Fn_IN_COLLECTION__BINARY_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__BYTE_BAG__BOOL : Fn { override val signature = FnSignature( @@ -1350,7 +1350,7 @@ internal object Fn_IN_COLLECTION__BYTE_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__BYTE_LIST__BOOL : Fn { override val signature = FnSignature( @@ -1378,7 +1378,7 @@ internal object Fn_IN_COLLECTION__BYTE_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__BYTE_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -1406,7 +1406,7 @@ internal object Fn_IN_COLLECTION__BYTE_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__BLOB_BAG__BOOL : Fn { override val signature = FnSignature( @@ -1434,7 +1434,7 @@ internal object Fn_IN_COLLECTION__BLOB_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__BLOB_LIST__BOOL : Fn { override val signature = FnSignature( @@ -1462,7 +1462,7 @@ internal object Fn_IN_COLLECTION__BLOB_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__BLOB_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -1490,7 +1490,7 @@ internal object Fn_IN_COLLECTION__BLOB_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__CLOB_BAG__BOOL : Fn { override val signature = FnSignature( @@ -1518,7 +1518,7 @@ internal object Fn_IN_COLLECTION__CLOB_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__CLOB_LIST__BOOL : Fn { override val signature = FnSignature( @@ -1546,7 +1546,7 @@ internal object Fn_IN_COLLECTION__CLOB_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__CLOB_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -1574,7 +1574,7 @@ internal object Fn_IN_COLLECTION__CLOB_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__DATE_BAG__BOOL : Fn { override val signature = FnSignature( @@ -1602,7 +1602,7 @@ internal object Fn_IN_COLLECTION__DATE_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__DATE_LIST__BOOL : Fn { override val signature = FnSignature( @@ -1630,7 +1630,7 @@ internal object Fn_IN_COLLECTION__DATE_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__DATE_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -1658,7 +1658,7 @@ internal object Fn_IN_COLLECTION__DATE_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__TIME_BAG__BOOL : Fn { override val signature = FnSignature( @@ -1686,7 +1686,7 @@ internal object Fn_IN_COLLECTION__TIME_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__TIME_LIST__BOOL : Fn { override val signature = FnSignature( @@ -1714,7 +1714,7 @@ internal object Fn_IN_COLLECTION__TIME_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__TIME_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -1742,7 +1742,7 @@ internal object Fn_IN_COLLECTION__TIME_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__TIMESTAMP_BAG__BOOL : Fn { override val signature = FnSignature( @@ -1770,7 +1770,7 @@ internal object Fn_IN_COLLECTION__TIMESTAMP_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__TIMESTAMP_LIST__BOOL : Fn { override val signature = FnSignature( @@ -1798,7 +1798,7 @@ internal object Fn_IN_COLLECTION__TIMESTAMP_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__TIMESTAMP_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -1826,7 +1826,7 @@ internal object Fn_IN_COLLECTION__TIMESTAMP_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INTERVAL_BAG__BOOL : Fn { override val signature = FnSignature( @@ -1854,7 +1854,7 @@ internal object Fn_IN_COLLECTION__INTERVAL_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INTERVAL_LIST__BOOL : Fn { override val signature = FnSignature( @@ -1882,7 +1882,7 @@ internal object Fn_IN_COLLECTION__INTERVAL_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__INTERVAL_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -1910,7 +1910,7 @@ internal object Fn_IN_COLLECTION__INTERVAL_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__BAG_BAG__BOOL : Fn { override val signature = FnSignature( @@ -1938,7 +1938,7 @@ internal object Fn_IN_COLLECTION__BAG_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__BAG_LIST__BOOL : Fn { override val signature = FnSignature( @@ -1966,7 +1966,7 @@ internal object Fn_IN_COLLECTION__BAG_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__BAG_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -1994,7 +1994,7 @@ internal object Fn_IN_COLLECTION__BAG_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__LIST_BAG__BOOL : Fn { override val signature = FnSignature( @@ -2022,7 +2022,7 @@ internal object Fn_IN_COLLECTION__LIST_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__LIST_LIST__BOOL : Fn { override val signature = FnSignature( @@ -2050,7 +2050,7 @@ internal object Fn_IN_COLLECTION__LIST_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__LIST_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -2078,7 +2078,7 @@ internal object Fn_IN_COLLECTION__LIST_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__SEXP_BAG__BOOL : Fn { override val signature = FnSignature( @@ -2106,7 +2106,7 @@ internal object Fn_IN_COLLECTION__SEXP_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__SEXP_LIST__BOOL : Fn { override val signature = FnSignature( @@ -2134,7 +2134,7 @@ internal object Fn_IN_COLLECTION__SEXP_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__SEXP_SEXP__BOOL : Fn { override val signature = FnSignature( @@ -2162,7 +2162,7 @@ internal object Fn_IN_COLLECTION__SEXP_SEXP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__STRUCT_BAG__BOOL : Fn { override val signature = FnSignature( @@ -2190,7 +2190,7 @@ internal object Fn_IN_COLLECTION__STRUCT_BAG__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__STRUCT_LIST__BOOL : Fn { override val signature = FnSignature( @@ -2218,7 +2218,7 @@ internal object Fn_IN_COLLECTION__STRUCT_LIST__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IN_COLLECTION__STRUCT_SEXP__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsAny.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsAny.kt similarity index 70% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsAny.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsAny.kt index 152ba74666..9d3d3e89b5 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsAny.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsAny.kt @@ -1,18 +1,18 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_ANY__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBag.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBag.kt similarity index 72% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBag.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBag.kt index 779295c1e5..60db2f5e6f 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBag.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBag.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BagValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_BAG__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBinary.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBinary.kt similarity index 72% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBinary.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBinary.kt index 5f602dff58..e18c662121 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBinary.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBinary.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BinaryValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_BINARY__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBlob.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBlob.kt similarity index 72% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBlob.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBlob.kt index 0edf621340..d20c9459db 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBlob.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBlob.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BlobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_BLOB__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBool.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBool.kt similarity index 72% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBool.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBool.kt index 83967c68f9..fafee6415c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsBool.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBool.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_BOOL__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsByte.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsByte.kt similarity index 72% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsByte.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsByte.kt index 78bf451b53..ef5ea5a880 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsByte.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsByte.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ByteValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_BYTE__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsChar.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsChar.kt similarity index 83% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsChar.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsChar.kt index 5c5644bece..affb7e60b2 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsChar.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsChar.kt @@ -1,13 +1,13 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins import org.partiql.errors.TypeCheckException -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.CharValue import org.partiql.value.Int32Value import org.partiql.value.PartiQLValue @@ -19,7 +19,7 @@ import org.partiql.value.StringValue import org.partiql.value.boolValue import org.partiql.value.check -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_CHAR__ANY__BOOL : Fn { override val signature = FnSignature( @@ -35,7 +35,7 @@ internal object Fn_IS_CHAR__ANY__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_CHAR__INT32_ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsClob.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsClob.kt similarity index 72% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsClob.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsClob.kt index 6154a10545..43862e32d6 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsClob.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsClob.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_CLOB__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDate.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDate.kt similarity index 72% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDate.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDate.kt index c2edd8d510..9fb3b7fd30 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDate.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDate.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DateValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_DATE__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDecimal.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimal.kt similarity index 89% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDecimal.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimal.kt index a1bca2470d..ee99a1fed5 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDecimal.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimal.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Int32Value import org.partiql.value.PartiQLValue @@ -19,7 +19,7 @@ import org.partiql.value.check import java.math.RoundingMode import kotlin.math.max -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_DECIMAL__ANY__BOOL : Fn { override val signature = FnSignature( @@ -35,7 +35,7 @@ internal object Fn_IS_DECIMAL__ANY__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_DECIMAL__INT32_INT32_ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDecimalArbitrary.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimalArbitrary.kt similarity index 73% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDecimalArbitrary.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimalArbitrary.kt index e9011c92c2..5fddb2f16e 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsDecimalArbitrary.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimalArbitrary.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_DECIMAL_ARBITRARY__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsFloat32.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat32.kt similarity index 78% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsFloat32.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat32.kt index bc6b6e7b2b..7b902ebaa6 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsFloat32.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat32.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Float32Value import org.partiql.value.Float64Value import org.partiql.value.PartiQLValue @@ -15,7 +15,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_FLOAT32__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsFloat64.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat64.kt similarity index 76% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsFloat64.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat64.kt index d79f8baccc..a75562bb02 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsFloat64.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat64.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Float32Value import org.partiql.value.Float64Value import org.partiql.value.PartiQLValue @@ -15,7 +15,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_FLOAT64__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt.kt index db5f0a4e4a..f38c610b90 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int16Value import org.partiql.value.Int32Value import org.partiql.value.Int64Value @@ -18,7 +18,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_INT__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt16.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt16.kt similarity index 85% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt16.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt16.kt index f733752ece..0e9e5b6ddf 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt16.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt16.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int16Value import org.partiql.value.Int32Value import org.partiql.value.Int64Value @@ -18,7 +18,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_INT16__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt32.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt32.kt similarity index 84% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt32.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt32.kt index aafb185454..b2c50b67db 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt32.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt32.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int16Value import org.partiql.value.Int32Value import org.partiql.value.Int64Value @@ -18,7 +18,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_INT32__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt64.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt64.kt similarity index 83% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt64.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt64.kt index 431701b972..37291ca156 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt64.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt64.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int16Value import org.partiql.value.Int32Value import org.partiql.value.Int64Value @@ -18,7 +18,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_INT64__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt8.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt8.kt similarity index 86% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt8.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt8.kt index aa5c12ff6f..b6aef74d61 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInt8.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt8.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int16Value import org.partiql.value.Int32Value import org.partiql.value.Int64Value @@ -18,7 +18,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_INT8__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInterval.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInterval.kt similarity index 72% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInterval.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInterval.kt index 6046d19f7a..bdfa373102 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsInterval.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInterval.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.IntervalValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_INTERVAL__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsList.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsList.kt similarity index 72% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsList.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsList.kt index 02a45a1cdb..1a8f891f1d 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsList.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsList.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ListValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_LIST__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsMissing.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsMissing.kt similarity index 74% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsMissing.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsMissing.kt index 93252f0e28..6a08bfc77c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsMissing.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsMissing.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.MissingValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_MISSING__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsNull.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsNull.kt similarity index 68% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsNull.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsNull.kt index ca1ed7d677..841098ad3a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsNull.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsNull.kt @@ -1,20 +1,19 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL -import org.partiql.value.PartiQLValueType.MISSING import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_NULL__ANY__BOOL : Fn { override val signature = FnSignature( @@ -28,7 +27,7 @@ internal object Fn_IS_NULL__ANY__BOOL : Fn { ) override fun invoke(args: Array): PartiQLValue { - if (args[0].type == MISSING) { + if (args[0].type == ANY) { return boolValue(true) } return boolValue(args[0].isNull) diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsSexp.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSexp.kt similarity index 72% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsSexp.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSexp.kt index c81773f651..c4630d1ab0 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsSexp.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSexp.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.SexpValue import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_SEXP__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsString.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsString.kt similarity index 82% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsString.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsString.kt index a4f8b45a88..0e052e9678 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsString.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsString.kt @@ -1,13 +1,13 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins import org.partiql.errors.TypeCheckException -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int32Value import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -18,7 +18,7 @@ import org.partiql.value.StringValue import org.partiql.value.boolValue import org.partiql.value.check -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_STRING__ANY__BOOL : Fn { override val signature = FnSignature( @@ -34,7 +34,7 @@ internal object Fn_IS_STRING__ANY__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_STRING__INT32_ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsStruct.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsStruct.kt similarity index 72% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsStruct.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsStruct.kt index 6fe423073b..466ba9551b 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsStruct.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsStruct.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.StructValue import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_STRUCT__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsSymbol.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSymbol.kt similarity index 72% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsSymbol.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSymbol.kt index 19595e81d6..30d38df3ab 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsSymbol.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSymbol.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.SymbolValue import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_SYMBOL__ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsTime.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTime.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsTime.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTime.kt index 6f55ad88d7..bc5c5c97e3 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsTime.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTime.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY @@ -15,7 +15,7 @@ import org.partiql.value.PartiQLValueType.INT32 import org.partiql.value.TimeValue import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_TIME__ANY__BOOL : Fn { override val signature = FnSignature( @@ -31,7 +31,7 @@ internal object Fn_IS_TIME__ANY__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_TIME__BOOL_INT32_ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsTimestamp.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTimestamp.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsTimestamp.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTimestamp.kt index 11241f580c..c97a7b5bfe 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnIsTimestamp.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTimestamp.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY @@ -15,7 +15,7 @@ import org.partiql.value.PartiQLValueType.INT32 import org.partiql.value.TimestampValue import org.partiql.value.boolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_TIMESTAMP__ANY__BOOL : Fn { override val signature = FnSignature( @@ -31,7 +31,7 @@ internal object Fn_IS_TIMESTAMP__ANY__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_IS_TIMESTAMP__BOOL_INT32_ANY__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLike.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLike.kt similarity index 85% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLike.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLike.kt index 4a570db264..c5bf79f73f 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLike.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLike.kt @@ -1,14 +1,13 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.utils.PatternUtils.matchRegexPattern -import org.partiql.spi.connector.sql.utils.PatternUtils.parsePattern -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature +import org.partiql.planner.internal.fn.utils.PatternUtils.matchRegexPattern +import org.partiql.planner.internal.fn.utils.PatternUtils.parsePattern import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -21,7 +20,7 @@ import org.partiql.value.boolValue import org.partiql.value.check import java.util.regex.Pattern -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LIKE__STRING_STRING__BOOL : Fn { override val signature = FnSignature( @@ -49,7 +48,7 @@ internal object Fn_LIKE__STRING_STRING__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LIKE__SYMBOL_SYMBOL__BOOL : Fn { override val signature = FnSignature( @@ -77,7 +76,7 @@ internal object Fn_LIKE__SYMBOL_SYMBOL__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LIKE__CLOB_CLOB__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLikeEscape.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLikeEscape.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLikeEscape.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLikeEscape.kt index 0443b69dea..3733d50b5b 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLikeEscape.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLikeEscape.kt @@ -1,16 +1,15 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins import org.partiql.errors.TypeCheckException -import org.partiql.spi.connector.sql.utils.PatternUtils -import org.partiql.spi.connector.sql.utils.PatternUtils.checkPattern -import org.partiql.spi.connector.sql.utils.PatternUtils.parsePattern -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature +import org.partiql.planner.internal.fn.utils.PatternUtils +import org.partiql.planner.internal.fn.utils.PatternUtils.checkPattern +import org.partiql.planner.internal.fn.utils.PatternUtils.parsePattern import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -23,7 +22,7 @@ import org.partiql.value.boolValue import org.partiql.value.check import java.util.regex.Pattern -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LIKE_ESCAPE__STRING_STRING_STRING__BOOL : Fn { override val signature = FnSignature( @@ -59,7 +58,7 @@ internal object Fn_LIKE_ESCAPE__STRING_STRING_STRING__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LIKE_ESCAPE__SYMBOL_SYMBOL_SYMBOL__BOOL : Fn { override val signature = FnSignature( @@ -95,7 +94,7 @@ internal object Fn_LIKE_ESCAPE__SYMBOL_SYMBOL_SYMBOL__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LIKE_ESCAPE__CLOB_CLOB_CLOB__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLower.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLower.kt similarity index 82% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLower.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLower.kt index c1de41e8ac..076b0ea746 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLower.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLower.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.CLOB @@ -16,7 +16,7 @@ import org.partiql.value.StringValue import org.partiql.value.check import org.partiql.value.stringValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LOWER__STRING__STRING : Fn { override val signature = FnSignature( @@ -34,7 +34,7 @@ internal object Fn_LOWER__STRING__STRING : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LOWER__SYMBOL__SYMBOL : Fn { override val signature = FnSignature( @@ -52,7 +52,7 @@ internal object Fn_LOWER__SYMBOL__SYMBOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LOWER__CLOB__CLOB : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLt.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLt.kt similarity index 89% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLt.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLt.kt index 6761410205..c7f5a580b4 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLt.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLt.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.DateValue import org.partiql.value.DecimalValue @@ -40,7 +40,7 @@ import org.partiql.value.TimestampValue import org.partiql.value.boolValue import org.partiql.value.check -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LT__INT8_INT8__BOOL : Fn { override val signature = FnSignature( @@ -61,7 +61,7 @@ internal object Fn_LT__INT8_INT8__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LT__INT16_INT16__BOOL : Fn { override val signature = FnSignature( @@ -82,7 +82,7 @@ internal object Fn_LT__INT16_INT16__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LT__INT32_INT32__BOOL : Fn { override val signature = FnSignature( @@ -103,7 +103,7 @@ internal object Fn_LT__INT32_INT32__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LT__INT64_INT64__BOOL : Fn { override val signature = FnSignature( @@ -124,7 +124,7 @@ internal object Fn_LT__INT64_INT64__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LT__INT_INT__BOOL : Fn { override val signature = FnSignature( @@ -145,7 +145,7 @@ internal object Fn_LT__INT_INT__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LT__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__BOOL : Fn { override val signature = FnSignature( @@ -166,7 +166,7 @@ internal object Fn_LT__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LT__FLOAT32_FLOAT32__BOOL : Fn { override val signature = FnSignature( @@ -187,7 +187,7 @@ internal object Fn_LT__FLOAT32_FLOAT32__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LT__FLOAT64_FLOAT64__BOOL : Fn { override val signature = FnSignature( @@ -208,7 +208,7 @@ internal object Fn_LT__FLOAT64_FLOAT64__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LT__STRING_STRING__BOOL : Fn { override val signature = FnSignature( @@ -229,7 +229,7 @@ internal object Fn_LT__STRING_STRING__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LT__SYMBOL_SYMBOL__BOOL : Fn { override val signature = FnSignature( @@ -250,7 +250,7 @@ internal object Fn_LT__SYMBOL_SYMBOL__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LT__DATE_DATE__BOOL : Fn { override val signature = FnSignature( @@ -271,7 +271,7 @@ internal object Fn_LT__DATE_DATE__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LT__TIME_TIME__BOOL : Fn { override val signature = FnSignature( @@ -292,7 +292,7 @@ internal object Fn_LT__TIME_TIME__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LT__TIMESTAMP_TIMESTAMP__BOOL : Fn { override val signature = FnSignature( @@ -313,7 +313,7 @@ internal object Fn_LT__TIMESTAMP_TIMESTAMP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LT__BOOL_BOOL__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLte.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLte.kt similarity index 89% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLte.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLte.kt index a0d8da4e13..83a1705b45 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnLte.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLte.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.DateValue import org.partiql.value.DecimalValue @@ -40,7 +40,7 @@ import org.partiql.value.TimestampValue import org.partiql.value.boolValue import org.partiql.value.check -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LTE__INT8_INT8__BOOL : Fn { override val signature = FnSignature( @@ -61,7 +61,7 @@ internal object Fn_LTE__INT8_INT8__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LTE__INT16_INT16__BOOL : Fn { override val signature = FnSignature( @@ -82,7 +82,7 @@ internal object Fn_LTE__INT16_INT16__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LTE__INT32_INT32__BOOL : Fn { override val signature = FnSignature( @@ -103,7 +103,7 @@ internal object Fn_LTE__INT32_INT32__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LTE__INT64_INT64__BOOL : Fn { override val signature = FnSignature( @@ -124,7 +124,7 @@ internal object Fn_LTE__INT64_INT64__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LTE__INT_INT__BOOL : Fn { override val signature = FnSignature( @@ -145,7 +145,7 @@ internal object Fn_LTE__INT_INT__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LTE__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__BOOL : Fn { override val signature = FnSignature( @@ -166,7 +166,7 @@ internal object Fn_LTE__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LTE__FLOAT32_FLOAT32__BOOL : Fn { override val signature = FnSignature( @@ -187,7 +187,7 @@ internal object Fn_LTE__FLOAT32_FLOAT32__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LTE__FLOAT64_FLOAT64__BOOL : Fn { override val signature = FnSignature( @@ -208,7 +208,7 @@ internal object Fn_LTE__FLOAT64_FLOAT64__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LTE__STRING_STRING__BOOL : Fn { override val signature = FnSignature( @@ -229,7 +229,7 @@ internal object Fn_LTE__STRING_STRING__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LTE__SYMBOL_SYMBOL__BOOL : Fn { override val signature = FnSignature( @@ -250,7 +250,7 @@ internal object Fn_LTE__SYMBOL_SYMBOL__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LTE__DATE_DATE__BOOL : Fn { override val signature = FnSignature( @@ -271,7 +271,7 @@ internal object Fn_LTE__DATE_DATE__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LTE__TIME_TIME__BOOL : Fn { override val signature = FnSignature( @@ -292,7 +292,7 @@ internal object Fn_LTE__TIME_TIME__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LTE__TIMESTAMP_TIMESTAMP__BOOL : Fn { override val signature = FnSignature( @@ -313,7 +313,7 @@ internal object Fn_LTE__TIMESTAMP_TIMESTAMP__BOOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_LTE__BOOL_BOOL__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnMinus.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnMinus.kt similarity index 89% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnMinus.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnMinus.kt index 3432f42388..ff3f597e1d 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnMinus.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnMinus.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Float32Value import org.partiql.value.Float64Value @@ -36,7 +36,8 @@ import org.partiql.value.int8Value import org.partiql.value.intValue // TODO: Handle Overflow -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) + +@OptIn(PartiQLValueExperimental::class) internal object Fn_MINUS__INT8_INT8__INT8 : Fn { override val signature = FnSignature( @@ -57,7 +58,7 @@ internal object Fn_MINUS__INT8_INT8__INT8 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_MINUS__INT16_INT16__INT16 : Fn { override val signature = FnSignature( @@ -78,7 +79,7 @@ internal object Fn_MINUS__INT16_INT16__INT16 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_MINUS__INT32_INT32__INT32 : Fn { override val signature = FnSignature( @@ -99,7 +100,7 @@ internal object Fn_MINUS__INT32_INT32__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_MINUS__INT64_INT64__INT64 : Fn { override val signature = FnSignature( @@ -120,7 +121,7 @@ internal object Fn_MINUS__INT64_INT64__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_MINUS__INT_INT__INT : Fn { override val signature = FnSignature( @@ -141,7 +142,7 @@ internal object Fn_MINUS__INT_INT__INT : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_MINUS__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Fn { override val signature = FnSignature( @@ -162,7 +163,7 @@ internal object Fn_MINUS__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__DECIMAL_ARBITRARY } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_MINUS__FLOAT32_FLOAT32__FLOAT32 : Fn { override val signature = FnSignature( @@ -183,7 +184,7 @@ internal object Fn_MINUS__FLOAT32_FLOAT32__FLOAT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_MINUS__FLOAT64_FLOAT64__FLOAT64 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnModulo.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnModulo.kt similarity index 89% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnModulo.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnModulo.kt index 3943ce63cb..2bc4bffdc8 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnModulo.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnModulo.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Float32Value import org.partiql.value.Float64Value @@ -37,7 +37,7 @@ import org.partiql.value.intValue // TODO: Thore are untested and may be wrong. Java's mod operation does not match SQL's. -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_MODULO__INT8_INT8__INT8 : Fn { override val signature = FnSignature( @@ -58,7 +58,7 @@ internal object Fn_MODULO__INT8_INT8__INT8 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_MODULO__INT16_INT16__INT16 : Fn { override val signature = FnSignature( @@ -79,7 +79,7 @@ internal object Fn_MODULO__INT16_INT16__INT16 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_MODULO__INT32_INT32__INT32 : Fn { override val signature = FnSignature( @@ -100,7 +100,7 @@ internal object Fn_MODULO__INT32_INT32__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_MODULO__INT64_INT64__INT64 : Fn { override val signature = FnSignature( @@ -121,7 +121,7 @@ internal object Fn_MODULO__INT64_INT64__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_MODULO__INT_INT__INT : Fn { override val signature = FnSignature( @@ -142,7 +142,7 @@ internal object Fn_MODULO__INT_INT__INT : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_MODULO__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Fn { override val signature = FnSignature( @@ -163,7 +163,7 @@ internal object Fn_MODULO__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__DECIMAL_ARBITRAR } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_MODULO__FLOAT32_FLOAT32__FLOAT32 : Fn { override val signature = FnSignature( @@ -184,7 +184,7 @@ internal object Fn_MODULO__FLOAT32_FLOAT32__FLOAT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_MODULO__FLOAT64_FLOAT64__FLOAT64 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnNeg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNeg.kt similarity index 86% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnNeg.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNeg.kt index b59309bbc6..3032b9b289 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnNeg.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNeg.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Float32Value import org.partiql.value.Float64Value @@ -36,7 +36,8 @@ import org.partiql.value.int8Value import org.partiql.value.intValue // TODO: Handle Overflow -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) + +@OptIn(PartiQLValueExperimental::class) internal object Fn_NEG__INT8__INT8 : Fn { override val signature = FnSignature( @@ -53,7 +54,7 @@ internal object Fn_NEG__INT8__INT8 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_NEG__INT16__INT16 : Fn { override val signature = FnSignature( @@ -70,7 +71,7 @@ internal object Fn_NEG__INT16__INT16 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_NEG__INT32__INT32 : Fn { override val signature = FnSignature( @@ -87,7 +88,7 @@ internal object Fn_NEG__INT32__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_NEG__INT64__INT64 : Fn { override val signature = FnSignature( @@ -104,7 +105,7 @@ internal object Fn_NEG__INT64__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_NEG__INT__INT : Fn { override val signature = FnSignature( @@ -121,7 +122,7 @@ internal object Fn_NEG__INT__INT : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_NEG__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Fn { override val signature = FnSignature( @@ -138,7 +139,7 @@ internal object Fn_NEG__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_NEG__FLOAT32__FLOAT32 : Fn { override val signature = FnSignature( @@ -155,7 +156,7 @@ internal object Fn_NEG__FLOAT32__FLOAT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_NEG__FLOAT64__FLOAT64 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnNot.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNot.kt similarity index 74% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnNot.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNot.kt index 086584d34f..59c93591e4 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnNot.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNot.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue import org.partiql.value.check -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_NOT__BOOL__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnOctetLength.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOctetLength.kt similarity index 83% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnOctetLength.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOctetLength.kt index 7c2385e84a..95380c113a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnOctetLength.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOctetLength.kt @@ -1,9 +1,9 @@ -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ClobValue import org.partiql.value.Int32Value import org.partiql.value.PartiQLValue @@ -13,7 +13,7 @@ import org.partiql.value.StringValue import org.partiql.value.check import org.partiql.value.int32Value -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_OCTET_LENGTH__STRING__INT32 : Fn { override val signature = FnSignature( @@ -33,7 +33,7 @@ internal object Fn_OCTET_LENGTH__STRING__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_OCTET_LENGTH__SYMBOL__INT32 : Fn { override val signature = FnSignature( @@ -53,7 +53,7 @@ internal object Fn_OCTET_LENGTH__SYMBOL__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_OCTET_LENGTH__CLOB__INT32 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnOr.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOr.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnOr.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOr.kt index cd6436f2e7..b654fcfce2 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnOr.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOr.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -14,7 +14,7 @@ import org.partiql.value.PartiQLValueType.BOOL import org.partiql.value.boolValue import org.partiql.value.check -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_OR__BOOL_BOOL__BOOL : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPlus.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPlus.kt similarity index 88% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPlus.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPlus.kt index 1e9aaec61e..2d0fe4fbb0 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPlus.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPlus.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Float32Value import org.partiql.value.Float64Value @@ -36,7 +36,8 @@ import org.partiql.value.int8Value import org.partiql.value.intValue // TODO: Handle Overflow -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) + +@OptIn(PartiQLValueExperimental::class) internal object Fn_PLUS__INT8_INT8__INT8 : Fn { override val signature = FnSignature( @@ -57,7 +58,7 @@ internal object Fn_PLUS__INT8_INT8__INT8 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_PLUS__INT16_INT16__INT16 : Fn { override val signature = FnSignature( @@ -78,7 +79,7 @@ internal object Fn_PLUS__INT16_INT16__INT16 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_PLUS__INT32_INT32__INT32 : Fn { override val signature = FnSignature( @@ -99,7 +100,7 @@ internal object Fn_PLUS__INT32_INT32__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_PLUS__INT64_INT64__INT64 : Fn { override val signature = FnSignature( @@ -120,7 +121,7 @@ internal object Fn_PLUS__INT64_INT64__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_PLUS__INT_INT__INT : Fn { override val signature = FnSignature( @@ -141,7 +142,7 @@ internal object Fn_PLUS__INT_INT__INT : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_PLUS__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Fn { override val signature = FnSignature( @@ -162,7 +163,7 @@ internal object Fn_PLUS__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__DECIMAL_ARBITRARY } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_PLUS__FLOAT32_FLOAT32__FLOAT32 : Fn { override val signature = FnSignature( @@ -183,7 +184,7 @@ internal object Fn_PLUS__FLOAT32_FLOAT32__FLOAT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_PLUS__FLOAT64_FLOAT64__FLOAT64 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPos.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPos.kt similarity index 82% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPos.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPos.kt index 71516d09d7..4cce38a92b 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPos.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPos.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.DECIMAL_ARBITRARY @@ -18,7 +18,7 @@ import org.partiql.value.PartiQLValueType.INT32 import org.partiql.value.PartiQLValueType.INT64 import org.partiql.value.PartiQLValueType.INT8 -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_POS__INT8__INT8 : Fn { override val signature = FnSignature( @@ -34,7 +34,7 @@ internal object Fn_POS__INT8__INT8 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_POS__INT16__INT16 : Fn { override val signature = FnSignature( @@ -50,7 +50,7 @@ internal object Fn_POS__INT16__INT16 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_POS__INT32__INT32 : Fn { override val signature = FnSignature( @@ -66,7 +66,7 @@ internal object Fn_POS__INT32__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_POS__INT64__INT64 : Fn { override val signature = FnSignature( @@ -82,7 +82,7 @@ internal object Fn_POS__INT64__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_POS__INT__INT : Fn { override val signature = FnSignature( @@ -98,7 +98,7 @@ internal object Fn_POS__INT__INT : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_POS__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Fn { override val signature = FnSignature( @@ -114,7 +114,7 @@ internal object Fn_POS__DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_POS__FLOAT32__FLOAT32 : Fn { override val signature = FnSignature( @@ -130,7 +130,7 @@ internal object Fn_POS__FLOAT32__FLOAT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_POS__FLOAT64__FLOAT64 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPosition.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPosition.kt similarity index 83% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPosition.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPosition.kt index 61d8ce101b..81558148f9 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnPosition.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPosition.kt @@ -1,13 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.utils.StringUtils.codepointPosition -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature +import org.partiql.planner.internal.fn.utils.StringUtils.codepointPosition import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -20,7 +19,7 @@ import org.partiql.value.SymbolValue import org.partiql.value.check import org.partiql.value.int64Value -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_POSITION__STRING_STRING__INT64 : Fn { override val signature = FnSignature( @@ -42,7 +41,7 @@ internal object Fn_POSITION__STRING_STRING__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_POSITION__SYMBOL_SYMBOL__INT64 : Fn { override val signature = FnSignature( @@ -64,7 +63,7 @@ internal object Fn_POSITION__SYMBOL_SYMBOL__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_POSITION__CLOB_CLOB__INT64 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/exts/FnSize.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSize.kt similarity index 83% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/exts/FnSize.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSize.kt index 36b30d1f93..2fc463297a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/exts/FnSize.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSize.kt @@ -1,9 +1,8 @@ -package org.partiql.planner.internal.fn.sql.exts +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BagValue import org.partiql.value.ListValue import org.partiql.value.PartiQLValue @@ -14,7 +13,7 @@ import org.partiql.value.StructValue import org.partiql.value.check import org.partiql.value.int32Value -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_SIZE__BAG__INT32 : Fn { override val signature = FnSignature( @@ -33,7 +32,7 @@ internal object Fn_SIZE__BAG__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_SIZE__LIST__INT32 : Fn { override val signature = FnSignature( @@ -52,7 +51,7 @@ internal object Fn_SIZE__LIST__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_SIZE__SEXP__INT32 : Fn { override val signature = FnSignature( @@ -71,7 +70,7 @@ internal object Fn_SIZE__SEXP__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_SIZE__STRUCT__INT32 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnSubstring.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSubstring.kt similarity index 77% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnSubstring.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSubstring.kt index b931864dc7..3e368c2dfb 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnSubstring.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSubstring.kt @@ -1,15 +1,14 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException -import org.partiql.spi.connector.sql.utils.StringUtils.codepointSubstring -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature +import org.partiql.planner.internal.fn.utils.StringUtils.codepointSubstring import org.partiql.value.ClobValue import org.partiql.value.Int64Value import org.partiql.value.PartiQLValue @@ -94,7 +93,8 @@ import org.partiql.value.symbolValue * L1 = E1 - S1 * return java's substring(C, S1, E1) */ -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) + +@OptIn(PartiQLValueExperimental::class) internal object Fn_SUBSTRING__STRING_INT64__STRING : Fn { override val signature = FnSignature( @@ -110,13 +110,17 @@ internal object Fn_SUBSTRING__STRING_INT64__STRING : Fn { override fun invoke(args: Array): PartiQLValue { val value = args[0].check().string!! - val start = try { args[1].check().toInt32().value!! } catch (e: DataException) { throw TypeCheckException() } + val start = try { + args[1].check().toInt32().value!! + } catch (e: DataException) { + throw TypeCheckException() + } val result = value.codepointSubstring(start) return stringValue(result) } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_SUBSTRING__STRING_INT64_INT64__STRING : Fn { override val signature = FnSignature( @@ -133,15 +137,23 @@ internal object Fn_SUBSTRING__STRING_INT64_INT64__STRING : Fn { override fun invoke(args: Array): PartiQLValue { val value = args[0].check().string!! - val start = try { args[1].check().toInt32().value!! } catch (e: DataException) { throw TypeCheckException() } - val end = try { args[2].check().toInt32().value!! } catch (e: DataException) { throw TypeCheckException() } + val start = try { + args[1].check().toInt32().value!! + } catch (e: DataException) { + throw TypeCheckException() + } + val end = try { + args[2].check().toInt32().value!! + } catch (e: DataException) { + throw TypeCheckException() + } if (end < 0) throw TypeCheckException() val result = value.codepointSubstring(start, end) return stringValue(result) } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_SUBSTRING__SYMBOL_INT64__SYMBOL : Fn { override val signature = FnSignature( @@ -157,13 +169,17 @@ internal object Fn_SUBSTRING__SYMBOL_INT64__SYMBOL : Fn { override fun invoke(args: Array): PartiQLValue { val value = args[0].check().string!! - val start = try { args[1].check().toInt32().value!! } catch (e: DataException) { throw TypeCheckException() } + val start = try { + args[1].check().toInt32().value!! + } catch (e: DataException) { + throw TypeCheckException() + } val result = value.codepointSubstring(start) return symbolValue(result) } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_SUBSTRING__SYMBOL_INT64_INT64__SYMBOL : Fn { override val signature = FnSignature( @@ -180,15 +196,23 @@ internal object Fn_SUBSTRING__SYMBOL_INT64_INT64__SYMBOL : Fn { override fun invoke(args: Array): PartiQLValue { val value = args[0].check().string!! - val start = try { args[1].check().toInt32().value!! } catch (e: DataException) { throw TypeCheckException() } - val end = try { args[2].check().toInt32().value!! } catch (e: DataException) { throw TypeCheckException() } + val start = try { + args[1].check().toInt32().value!! + } catch (e: DataException) { + throw TypeCheckException() + } + val end = try { + args[2].check().toInt32().value!! + } catch (e: DataException) { + throw TypeCheckException() + } if (end < 0) throw TypeCheckException() val result = value.codepointSubstring(start, end) return symbolValue(result) } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_SUBSTRING__CLOB_INT64__CLOB : Fn { override val signature = FnSignature( @@ -204,13 +228,17 @@ internal object Fn_SUBSTRING__CLOB_INT64__CLOB : Fn { override fun invoke(args: Array): PartiQLValue { val value = args[0].check().value!!.toString(Charsets.UTF_8) - val start = try { args[1].check().toInt32().value!! } catch (e: DataException) { throw TypeCheckException() } + val start = try { + args[1].check().toInt32().value!! + } catch (e: DataException) { + throw TypeCheckException() + } val result = value.codepointSubstring(start) return clobValue(result.toByteArray()) } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_SUBSTRING__CLOB_INT64_INT64__CLOB : Fn { override val signature = FnSignature( @@ -227,8 +255,16 @@ internal object Fn_SUBSTRING__CLOB_INT64_INT64__CLOB : Fn { override fun invoke(args: Array): PartiQLValue { val string = args[0].check().value!!.toString(Charsets.UTF_8) - val start = try { args[1].check().toInt32().value!! } catch (e: DataException) { throw TypeCheckException() } - val end = try { args[2].check().toInt32().value!! } catch (e: DataException) { throw TypeCheckException() } + val start = try { + args[1].check().toInt32().value!! + } catch (e: DataException) { + throw TypeCheckException() + } + val end = try { + args[2].check().toInt32().value!! + } catch (e: DataException) { + throw TypeCheckException() + } if (end < 0) throw TypeCheckException() val result = string.codepointSubstring(start, end) return clobValue(result.toByteArray()) diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTimes.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTimes.kt similarity index 89% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTimes.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTimes.kt index a049a3bfa3..5e62782195 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTimes.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTimes.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Float32Value import org.partiql.value.Float64Value @@ -36,7 +36,8 @@ import org.partiql.value.int8Value import org.partiql.value.intValue // TODO: Handle Overflow -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) + +@OptIn(PartiQLValueExperimental::class) internal object Fn_TIMES__INT8_INT8__INT8 : Fn { override val signature = FnSignature( @@ -57,7 +58,7 @@ internal object Fn_TIMES__INT8_INT8__INT8 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TIMES__INT16_INT16__INT16 : Fn { override val signature = FnSignature( @@ -78,7 +79,7 @@ internal object Fn_TIMES__INT16_INT16__INT16 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TIMES__INT32_INT32__INT32 : Fn { override val signature = FnSignature( @@ -99,7 +100,7 @@ internal object Fn_TIMES__INT32_INT32__INT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TIMES__INT64_INT64__INT64 : Fn { override val signature = FnSignature( @@ -120,7 +121,7 @@ internal object Fn_TIMES__INT64_INT64__INT64 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TIMES__INT_INT__INT : Fn { override val signature = FnSignature( @@ -141,7 +142,7 @@ internal object Fn_TIMES__INT_INT__INT : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TIMES__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__DECIMAL_ARBITRARY : Fn { override val signature = FnSignature( @@ -162,7 +163,7 @@ internal object Fn_TIMES__DECIMAL_ARBITRARY_DECIMAL_ARBITRARY__DECIMAL_ARBITRARY } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TIMES__FLOAT32_FLOAT32__FLOAT32 : Fn { override val signature = FnSignature( @@ -183,7 +184,7 @@ internal object Fn_TIMES__FLOAT32_FLOAT32__FLOAT32 : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TIMES__FLOAT64_FLOAT64__FLOAT64 : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrim.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrim.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrim.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrim.kt index dddc89dc74..2805d707f4 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrim.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrim.kt @@ -1,13 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.utils.StringUtils.codepointTrim -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature +import org.partiql.planner.internal.fn.utils.StringUtils.codepointTrim import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -50,7 +49,8 @@ import org.partiql.value.symbolValue * * ` ::= ` * * ` ::= ` */ -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) + +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM__STRING__STRING : Fn { override val signature = FnSignature( @@ -68,7 +68,7 @@ internal object Fn_TRIM__STRING__STRING : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM__SYMBOL__SYMBOL : Fn { override val signature = FnSignature( @@ -86,7 +86,7 @@ internal object Fn_TRIM__SYMBOL__SYMBOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM__CLOB__CLOB : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimChars.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimChars.kt similarity index 84% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimChars.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimChars.kt index cc4da9d8e0..6a9a06fd8d 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimChars.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimChars.kt @@ -1,13 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.utils.StringUtils.codepointTrim -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature +import org.partiql.planner.internal.fn.utils.StringUtils.codepointTrim import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -21,7 +20,7 @@ import org.partiql.value.clobValue import org.partiql.value.stringValue import org.partiql.value.symbolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM_CHARS__STRING_STRING__STRING : Fn { override val signature = FnSignature( @@ -43,7 +42,7 @@ internal object Fn_TRIM_CHARS__STRING_STRING__STRING : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM_CHARS__SYMBOL_SYMBOL__SYMBOL : Fn { override val signature = FnSignature( @@ -65,7 +64,7 @@ internal object Fn_TRIM_CHARS__SYMBOL_SYMBOL__SYMBOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM_CHARS__CLOB_CLOB__CLOB : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimLeading.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimLeading.kt similarity index 81% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimLeading.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimLeading.kt index d6083b06af..95d4003e7f 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimLeading.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimLeading.kt @@ -1,13 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.utils.StringUtils.codepointTrimLeading -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature +import org.partiql.planner.internal.fn.utils.StringUtils.codepointTrimLeading import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -21,7 +20,7 @@ import org.partiql.value.clobValue import org.partiql.value.stringValue import org.partiql.value.symbolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM_LEADING__STRING__STRING : Fn { override val signature = FnSignature( @@ -39,7 +38,7 @@ internal object Fn_TRIM_LEADING__STRING__STRING : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM_LEADING__SYMBOL__SYMBOL : Fn { override val signature = FnSignature( @@ -57,7 +56,7 @@ internal object Fn_TRIM_LEADING__SYMBOL__SYMBOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM_LEADING__CLOB__CLOB : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimLeadingChars.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimLeadingChars.kt similarity index 84% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimLeadingChars.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimLeadingChars.kt index ec8f340b2f..858038bfd5 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimLeadingChars.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimLeadingChars.kt @@ -1,13 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.utils.StringUtils.codepointTrimLeading -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature +import org.partiql.planner.internal.fn.utils.StringUtils.codepointTrimLeading import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -21,7 +20,7 @@ import org.partiql.value.clobValue import org.partiql.value.stringValue import org.partiql.value.symbolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM_LEADING_CHARS__STRING_STRING__STRING : Fn { override val signature = FnSignature( @@ -43,7 +42,7 @@ internal object Fn_TRIM_LEADING_CHARS__STRING_STRING__STRING : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM_LEADING_CHARS__SYMBOL_SYMBOL__SYMBOL : Fn { override val signature = FnSignature( @@ -65,7 +64,7 @@ internal object Fn_TRIM_LEADING_CHARS__SYMBOL_SYMBOL__SYMBOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM_LEADING_CHARS__CLOB_CLOB__CLOB : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimTrailing.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimTrailing.kt similarity index 81% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimTrailing.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimTrailing.kt index 1bc5119727..9c3bb28985 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimTrailing.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimTrailing.kt @@ -1,13 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.utils.StringUtils.codepointTrimTrailing -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature +import org.partiql.planner.internal.fn.utils.StringUtils.codepointTrimTrailing import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -21,7 +20,7 @@ import org.partiql.value.clobValue import org.partiql.value.stringValue import org.partiql.value.symbolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM_TRAILING__STRING__STRING : Fn { override val signature = FnSignature( @@ -39,7 +38,7 @@ internal object Fn_TRIM_TRAILING__STRING__STRING : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM_TRAILING__SYMBOL__SYMBOL : Fn { override val signature = FnSignature( @@ -57,7 +56,7 @@ internal object Fn_TRIM_TRAILING__SYMBOL__SYMBOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM_TRAILING__CLOB__CLOB : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimTrailingChars.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimTrailingChars.kt similarity index 84% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimTrailingChars.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimTrailingChars.kt index 27ce82ef80..1999c83404 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnTrimTrailingChars.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimTrailingChars.kt @@ -1,13 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.connector.sql.utils.StringUtils.codepointTrimTrailing -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature +import org.partiql.planner.internal.fn.utils.StringUtils.codepointTrimTrailing import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -21,7 +20,7 @@ import org.partiql.value.clobValue import org.partiql.value.stringValue import org.partiql.value.symbolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM_TRAILING_CHARS__STRING_STRING__STRING : Fn { override val signature = FnSignature( @@ -43,7 +42,7 @@ internal object Fn_TRIM_TRAILING_CHARS__STRING_STRING__STRING : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM_TRAILING_CHARS__SYMBOL_SYMBOL__SYMBOL : Fn { override val signature = FnSignature( @@ -65,7 +64,7 @@ internal object Fn_TRIM_TRAILING_CHARS__SYMBOL_SYMBOL__SYMBOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM_TRAILING_CHARS__CLOB_CLOB__CLOB : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnUpper.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUpper.kt similarity index 83% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnUpper.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUpper.kt index 06519f2f9e..7fc30a4bd8 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnUpper.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUpper.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -20,7 +20,7 @@ import org.partiql.value.clobValue import org.partiql.value.stringValue import org.partiql.value.symbolValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_UPPER__STRING__STRING : Fn { override val signature = FnSignature( @@ -38,7 +38,7 @@ internal object Fn_UPPER__STRING__STRING : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_UPPER__SYMBOL__SYMBOL : Fn { override val signature = FnSignature( @@ -56,7 +56,7 @@ internal object Fn_UPPER__SYMBOL__SYMBOL : Fn { } } -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_UPPER__CLOB__CLOB : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnUtcnow.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUtcnow.kt similarity index 75% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnUtcnow.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUtcnow.kt index f44d613ea0..c42c563ae0 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/FnUtcnow.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUtcnow.kt @@ -1,18 +1,18 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.sql.builtins +package org.partiql.planner.internal.fn.builtins -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn + +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.TIMESTAMP import org.partiql.value.datetime.TimestampWithTimeZone import org.partiql.value.timestampValue -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal object Fn_UTCNOW____TIMESTAMP : Fn { override val signature = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/Accumulator.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/Accumulator.kt similarity index 97% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/Accumulator.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/Accumulator.kt index 3c9eeb8894..5fbd9b008f 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/Accumulator.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/Accumulator.kt @@ -14,12 +14,12 @@ @file:OptIn(PartiQLValueExperimental::class) -package org.partiql.planner.internal.fn.sql.builtins.internal +package org.partiql.planner.internal.fn.builtins.internal import com.amazon.ion.Decimal import org.partiql.errors.TypeCheckException -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.FnExperimental +import org.partiql.planner.internal.fn.Agg + import org.partiql.value.BoolValue import org.partiql.value.DecimalValue import org.partiql.value.Float32Value @@ -47,7 +47,6 @@ import java.math.BigInteger import java.math.MathContext import java.math.RoundingMode -@OptIn(FnExperimental::class) internal abstract class Accumulator : Agg.Accumulator { /** Accumulates the next value into this [Accumulator]. */ @@ -130,7 +129,7 @@ internal fun checkIsBooleanType(funcName: String, value: PartiQLValue) { } @OptIn(PartiQLValueExperimental::class) -internal fun PartiQLValue.isUnknown(): Boolean = this.type == PartiQLValueType.MISSING || this.isNull +internal fun PartiQLValue.isUnknown(): Boolean = this.type == PartiQLValueType.ANY || this.isNull @OptIn(PartiQLValueExperimental::class) internal fun PartiQLValue.numberValue(): Number = when (this) { @@ -161,7 +160,8 @@ internal fun PartiQLValueType.isNumber(): Boolean = when (this) { PartiQLValueType.DECIMAL, PartiQLValueType.DECIMAL_ARBITRARY, PartiQLValueType.FLOAT32, - PartiQLValueType.FLOAT64 -> true + PartiQLValueType.FLOAT64, + -> true else -> false } diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorAnySome.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorAnySome.kt similarity index 89% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorAnySome.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorAnySome.kt index ddfb1342e0..3eba785613 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorAnySome.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorAnySome.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.sql.builtins.internal +package org.partiql.planner.internal.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorAvg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorAvg.kt similarity index 91% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorAvg.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorAvg.kt index ed3f8237f9..1025292ab9 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorAvg.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorAvg.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.sql.builtins.internal +package org.partiql.planner.internal.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -6,7 +6,7 @@ import org.partiql.value.PartiQLValueType @OptIn(PartiQLValueExperimental::class) internal class AccumulatorAvg( - private val targetType: PartiQLValueType = PartiQLValueType.ANY + private val targetType: PartiQLValueType = PartiQLValueType.ANY, ) : Accumulator() { var sum: Number = 0.0 diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorCount.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorCount.kt similarity index 86% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorCount.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorCount.kt index c83ec70ae8..e99f030549 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorCount.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorCount.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.sql.builtins.internal +package org.partiql.planner.internal.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorCountStar.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorCountStar.kt similarity index 64% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorCountStar.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorCountStar.kt index a2113209bf..da323db940 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorCountStar.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorCountStar.kt @@ -1,12 +1,11 @@ -package org.partiql.planner.internal.fn.sql.builtins.internal +package org.partiql.planner.internal.fn.builtins.internal -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.FnExperimental +import org.partiql.planner.internal.fn.Agg import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.int64Value -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal class AccumulatorCountStar : Agg.Accumulator { var count: Long = 0L diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorEvery.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorEvery.kt similarity index 90% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorEvery.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorEvery.kt index 3d2dc26590..810c43a137 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorEvery.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorEvery.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.sql.builtins.internal +package org.partiql.planner.internal.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorGroupAs.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorGroupAs.kt similarity index 86% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorGroupAs.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorGroupAs.kt index e1d9a4b877..8dcbb8cd74 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorGroupAs.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorGroupAs.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.sql.builtins.internal +package org.partiql.planner.internal.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorMax.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorMax.kt similarity index 88% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorMax.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorMax.kt index 91a3d0c5d1..dc9c2dc1df 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorMax.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorMax.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.sql.builtins.internal +package org.partiql.planner.internal.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorMin.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorMin.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorMin.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorMin.kt index eb9ac373a1..be11254eea 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorMin.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorMin.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.sql.builtins.internal +package org.partiql.planner.internal.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorSum.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorSum.kt similarity index 91% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorSum.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorSum.kt index 4da993379a..eb74b16a62 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/builtins/internal/AccumulatorSum.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorSum.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.sql.builtins.internal +package org.partiql.planner.internal.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -6,7 +6,7 @@ import org.partiql.value.PartiQLValueType @OptIn(PartiQLValueExperimental::class) internal class AccumulatorSum( - private val targetType: PartiQLValueType = PartiQLValueType.ANY + private val targetType: PartiQLValueType = PartiQLValueType.ANY, ) : Accumulator() { var sum: Number? = null diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/PartiQLExts.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/PartiQLExts.kt deleted file mode 100644 index 007f2edabf..0000000000 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/PartiQLExts.kt +++ /dev/null @@ -1,23 +0,0 @@ -package org.partiql.planner.internal.fn.sql - -/* ktlint-disable no-wildcard-imports */ -import org.partiql.spi.connector.sql.exts.* -import org.partiql.spi.fn.FnExperimental - -/** - * PartiQL built-in functions that are not in the SQL-92 spec - */ -@OptIn(FnExperimental::class) -internal object PartiQLExts { - @JvmStatic - val builtins = listOf( - Fn_EXISTS__BAG__BOOL, - Fn_EXISTS__LIST__BOOL, - Fn_EXISTS__SEXP__BOOL, - Fn_EXISTS__STRUCT__BOOL, - Fn_SIZE__BAG__INT32, - Fn_SIZE__LIST__INT32, - Fn_SIZE__SEXP__INT32, - Fn_SIZE__STRUCT__INT32 - ) -} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlAgg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlAgg.kt deleted file mode 100644 index 880d2de4ef..0000000000 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlAgg.kt +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright Amazon.com, Inc. or its affiliates. All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"). - * You may not use this file except in compliance with the License. - * A copy of the License is located at: - * - * http://aws.amazon.com/apache2.0/ - * - * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific - * language governing permissions and limitations under the License. - */ - -package org.partiql.planner.internal.fn.sql - -import org.partiql.spi.connector.ConnectorAgg -import org.partiql.spi.connector.ConnectorFn -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental - -/** - * Simple [ConnectorFn] implementation wrapping a signature. - * - * @property name - * @property variants - */ -@OptIn(FnExperimental::class) -public class SqlAgg( - private val name: String, - private val variants: List, -) : ConnectorAgg { - - override fun getVariants(): List = variants -} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlAggProvider.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlAggProvider.kt deleted file mode 100644 index cfd36e06d9..0000000000 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlAggProvider.kt +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright Amazon.com, Inc. or its affiliates. All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"). - * You may not use this file except in compliance with the License. - * A copy of the License is located at: - * - * http://aws.amazon.com/apache2.0/ - * - * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific - * language governing permissions and limitations under the License. - */ - -package org.partiql.planner.internal.fn.sql - -import org.partiql.spi.connector.ConnectorAggProvider -import org.partiql.spi.connector.ConnectorFnProvider -import org.partiql.spi.connector.ConnectorPath -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.Index - -/** - * A basic [ConnectorFnProvider] over an [Index]. - */ -@OptIn(FnExperimental::class) -public class SqlAggProvider(private val index: Index) : ConnectorAggProvider { - - override fun getAgg(path: ConnectorPath, specific: String): Agg? { - return index.get(path, specific) - } -} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlBindings.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlBindings.kt deleted file mode 100644 index f794f9817a..0000000000 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlBindings.kt +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright Amazon.com, Inc. or its affiliates. All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"). - * You may not use this file except in compliance with the License. - * A copy of the License is located at: - * - * http://aws.amazon.com/apache2.0/ - * - * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific - * language governing permissions and limitations under the License. - */ - -package org.partiql.planner.internal.fn.sql - -import org.partiql.spi.connector.ConnectorBindings -import org.partiql.spi.connector.ConnectorPath -import org.partiql.spi.connector.sql.info.InfoSchema -import org.partiql.value.PartiQLValue -import org.partiql.value.PartiQLValueExperimental - -/** - * An implementation of [ConnectorBindings] including the INFORMATION_SCHEMA. - */ -public class SqlBindings(private val info: InfoSchema) : ConnectorBindings { - - @OptIn(PartiQLValueExperimental::class) - public override fun getValue(path: ConnectorPath): PartiQLValue { - TODO("Not yet implemented") - } -} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlConnector.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlConnector.kt deleted file mode 100644 index 72af4e008f..0000000000 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlConnector.kt +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright Amazon.com, Inc. or its affiliates. All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"). - * You may not use this file except in compliance with the License. - * A copy of the License is located at: - * - * http://aws.amazon.com/apache2.0/ - * - * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific - * language governing permissions and limitations under the License. - */ - -package org.partiql.planner.internal.fn.sql - -import org.partiql.spi.connector.Connector -import org.partiql.spi.connector.ConnectorAggProvider -import org.partiql.spi.connector.ConnectorBindings -import org.partiql.spi.connector.ConnectorFnProvider -import org.partiql.spi.connector.ConnectorMetadata -import org.partiql.spi.connector.ConnectorSession -import org.partiql.spi.connector.sql.info.InfoSchema -import org.partiql.spi.fn.FnExperimental - -/** - * An SQL-99 based [Connector] implementation. - */ -public abstract class SqlConnector : Connector { - - /** - * Default SQL-99 INFORMATION_SCHEMA for use in function resolution. - */ - public open val info: InfoSchema = InfoSchema.default() - - /** - * Returns an implementation of [ConnectorMetadata] which provides the INFORMATION_SCHEMA and delegates - * to a user-provided [ConnectorMetadata] implementation. - * - * @param session - * @return - */ - abstract override fun getMetadata(session: ConnectorSession): org.partiql.planner.internal.fn.sql.SqlMetadata - - override fun getBindings(): ConnectorBindings = org.partiql.planner.internal.fn.sql.SqlBindings(info) - - @FnExperimental - override fun getFunctions(): ConnectorFnProvider = org.partiql.planner.internal.fn.sql.SqlFnProvider(info.functions) - - @FnExperimental - override fun getAggregations(): ConnectorAggProvider = - org.partiql.planner.internal.fn.sql.SqlAggProvider(info.aggregations) -} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlFn.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlFn.kt deleted file mode 100644 index dda218c785..0000000000 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlFn.kt +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright Amazon.com, Inc. or its affiliates. All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"). - * You may not use this file except in compliance with the License. - * A copy of the License is located at: - * - * http://aws.amazon.com/apache2.0/ - * - * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific - * language governing permissions and limitations under the License. - */ - -package org.partiql.planner.internal.fn.sql - -import org.partiql.spi.connector.ConnectorFn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnSignature - -/** - * Simple [ConnectorFn] implementation wrapping a signature. - * - * @property name - * @property variants - */ -@OptIn(FnExperimental::class) -public class SqlFn( - private val name: String, - private val variants: List, -) : ConnectorFn { - - override fun getVariants(): List = variants -} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlFnProvider.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlFnProvider.kt deleted file mode 100644 index 8594ca6696..0000000000 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlFnProvider.kt +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright Amazon.com, Inc. or its affiliates. All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"). - * You may not use this file except in compliance with the License. - * A copy of the License is located at: - * - * http://aws.amazon.com/apache2.0/ - * - * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific - * language governing permissions and limitations under the License. - */ - -package org.partiql.planner.internal.fn.sql - -import org.partiql.spi.connector.ConnectorFnProvider -import org.partiql.spi.connector.ConnectorPath -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.Index - -/** - * A basic [ConnectorFnProvider] over an [Index]. - */ -@OptIn(FnExperimental::class) -public class SqlFnProvider(private val index: Index) : ConnectorFnProvider { - - override fun getFn(path: ConnectorPath, specific: String): Fn? { - return index.get(path, specific) - } -} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlMetadata.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlMetadata.kt deleted file mode 100644 index 2ee9bfa8d0..0000000000 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/SqlMetadata.kt +++ /dev/null @@ -1,65 +0,0 @@ -/* - * Copyright Amazon.com, Inc. or its affiliates. All rights reserved. - * - * Licensed under the Apache License, Version 2.0 (the "License"). - * You may not use this file except in compliance with the License. - * A copy of the License is located at: - * - * http://aws.amazon.com/apache2.0/ - * - * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific - * language governing permissions and limitations under the License. - */ - -package org.partiql.planner.internal.fn.sql - -import org.partiql.spi.BindingPath -import org.partiql.spi.connector.ConnectorHandle -import org.partiql.spi.connector.ConnectorMetadata -import org.partiql.spi.connector.ConnectorPath -import org.partiql.spi.connector.ConnectorSession -import org.partiql.spi.connector.sql.info.InfoSchema -import org.partiql.spi.fn.FnExperimental - -/** - * An instance of [SqlMetadata] - * - * @property session - * @property info - */ -public open class SqlMetadata( - private val session: ConnectorSession, - private val info: InfoSchema, -) : ConnectorMetadata { - - /** - * TODO provide schemas from `info`. - * - * @param path - * @return - */ - override fun getObject(path: BindingPath): ConnectorHandle.Obj? = null - - @FnExperimental - override fun getFunction(path: BindingPath): ConnectorHandle.Fn? { - val cnf = path.steps.map { it.name.uppercase() } - val name = cnf.last() - val variants = info.functions.get(cnf).map { it.signature } - if (variants.isEmpty()) { - return null - } - return ConnectorHandle.Fn(ConnectorPath(cnf), org.partiql.planner.internal.fn.sql.SqlFn(name, variants)) - } - - @FnExperimental - override fun getAggregation(path: BindingPath): ConnectorHandle.Agg? { - val cnf = path.steps.map { it.name.uppercase() } - val name = cnf.last() - val variants = info.aggregations.get(cnf).map { it.signature } - if (variants.isEmpty()) { - return null - } - return ConnectorHandle.Agg(ConnectorPath(cnf), org.partiql.planner.internal.fn.sql.SqlAgg(name, variants)) - } -} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoSchema.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoSchema.kt deleted file mode 100644 index 44d45ebd00..0000000000 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoSchema.kt +++ /dev/null @@ -1,54 +0,0 @@ -package org.partiql.planner.internal.fn.sql.info - -import org.partiql.planner.internal.fn.sql.PartiQLExts -import org.partiql.planner.internal.fn.sql.SqlBuiltins -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.Index - -/** - * Provides the INFORMATION_SCHEMA views over internal database symbols. - */ -public class InfoSchema @OptIn(FnExperimental::class) constructor( - public val functions: Index, - public val aggregations: Index -) { - - /** - * INFORMATION_SCHEMA.ROUTINES - */ - @OptIn(FnExperimental::class) - private val routines: InfoView = InfoViewRoutines(functions) - - public fun get(table: String): InfoView? = when (table) { - "routines" -> routines - else -> null - } - - public companion object { - - @OptIn(FnExperimental::class) - @JvmStatic - public fun default(): InfoSchema { - val functions = Index.fnBuilder() - .addAll(org.partiql.planner.internal.fn.sql.SqlBuiltins.builtins) - .build() - val aggregations = Index.aggBuilder() - .addAll(org.partiql.planner.internal.fn.sql.SqlBuiltins.aggregations) - .build() - return InfoSchema(functions, aggregations) - } - - @OptIn(FnExperimental::class) - public fun ext(): InfoSchema { - val functions = Index.fnBuilder() - .addAll(org.partiql.planner.internal.fn.sql.SqlBuiltins.builtins + org.partiql.planner.internal.fn.sql.PartiQLExts.builtins) - .build() - val aggregations = Index.aggBuilder() - .addAll(org.partiql.planner.internal.fn.sql.SqlBuiltins.aggregations) - .build() - return InfoSchema(functions, aggregations) - } - } -} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoView.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoView.kt deleted file mode 100644 index 98a0e4343c..0000000000 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoView.kt +++ /dev/null @@ -1,16 +0,0 @@ -package org.partiql.planner.internal.fn.sql.info - -import org.partiql.types.StaticType -import org.partiql.value.PartiQLValue -import org.partiql.value.PartiQLValueExperimental - -/** - * Basic interface for an INFORMATION_SCHEMA table view. - */ -public interface InfoView { - - public val schema: StaticType - - @OptIn(PartiQLValueExperimental::class) - public fun value(): PartiQLValue -} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoViewRoutines.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoViewRoutines.kt deleted file mode 100644 index 238f82aba3..0000000000 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/info/InfoViewRoutines.kt +++ /dev/null @@ -1,35 +0,0 @@ -package org.partiql.planner.internal.fn.sql.info - -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.Index -import org.partiql.types.BagType -import org.partiql.types.StaticType -import org.partiql.types.StructType -import org.partiql.types.TupleConstraint -import org.partiql.value.PartiQLValue -import org.partiql.value.PartiQLValueExperimental -import org.partiql.value.bagValue -import org.partiql.value.nullValue - -/** - * This provides the INFORMATION_SCHEMA.ROUTINES view for an [SqlConnector]. - */ -internal class InfoViewRoutines @OptIn(FnExperimental::class) constructor(private val index: Index) : InfoView { - - override val schema: StaticType = BagType( - elementType = StructType( - fields = listOf( - StructType.Field("ROUTINE_NAME", StaticType.STRING), - StructType.Field("ROUTINE_TYPE", StaticType.STRING), - ), - contentClosed = true, - constraints = setOf(TupleConstraint.Open(false)) - ) - ) - - @OptIn(PartiQLValueExperimental::class) - override fun value(): PartiQLValue { - return bagValue(listOf(nullValue())) - } -} diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/utils/PatternUtils.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/utils/PatternUtils.kt similarity index 98% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/utils/PatternUtils.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/utils/PatternUtils.kt index 5366639263..07e24e8049 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/utils/PatternUtils.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/utils/PatternUtils.kt @@ -1,6 +1,6 @@ -package org.partiql.planner.internal.fn.sql.utils +package org.partiql.planner.internal.fn.utils -import org.partiql.spi.connector.sql.utils.StringUtils.codePointSequence +import org.partiql.planner.internal.fn.utils.StringUtils.codePointSequence import java.util.regex.Pattern internal object PatternUtils { diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/utils/StringUtils.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/utils/StringUtils.kt similarity index 99% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/utils/StringUtils.kt rename to partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/utils/StringUtils.kt index f45f7ecd05..24b9e67d99 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/sql/utils/StringUtils.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/utils/StringUtils.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.sql.utils +package org.partiql.planner.internal.fn.utils internal object StringUtils { diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/ir/Nodes.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/ir/Nodes.kt index 4371b04362..39dcd508c5 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/ir/Nodes.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/ir/Nodes.kt @@ -72,9 +72,9 @@ import org.partiql.planner.internal.ir.builder.RexOpVarUnresolvedBuilder import org.partiql.planner.internal.ir.builder.StatementQueryBuilder import org.partiql.planner.internal.ir.visitor.PlanVisitor import org.partiql.planner.internal.typer.CompilerType -import org.partiql.spi.fn.AggSignature -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.AggSignature +import org.partiql.planner.internal.fn.FnExperimental +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import kotlin.collections.Set diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/transforms/Symbols.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/transforms/Symbols.kt index 8d5f4b0980..935743f314 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/transforms/Symbols.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/transforms/Symbols.kt @@ -6,7 +6,7 @@ import org.partiql.plan.catalogItemAgg import org.partiql.plan.catalogItemFn import org.partiql.plan.catalogItemValue import org.partiql.planner.internal.ir.Ref -import org.partiql.spi.fn.FnExperimental +import org.partiql.planner.internal.fn.FnExperimental import org.partiql.plan.Ref as CatalogRef /** @@ -31,13 +31,13 @@ internal class Symbols private constructor() { item = catalogItemValue(ref.name.toList(), ref.type), ) - @OptIn(FnExperimental::class) + fun insert(ref: Ref.Fn): CatalogRef = insert( catalog = ref.catalog, item = catalogItemFn(ref.name.toList(), ref.signature.specific), ) - @OptIn(FnExperimental::class) + fun insert(ref: Ref.Agg): CatalogRef = insert( catalog = ref.catalog, item = catalogItemAgg(ref.name.toList(), ref.signature.specific), diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/typer/PlanTyper.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/typer/PlanTyper.kt index baa0cdd35e..2492ea73d9 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/typer/PlanTyper.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/typer/PlanTyper.kt @@ -55,7 +55,7 @@ import org.partiql.planner.internal.utils.PlanUtils import org.partiql.spi.BindingCase import org.partiql.spi.BindingName import org.partiql.spi.BindingPath -import org.partiql.spi.fn.FnExperimental +import org.partiql.planner.internal.fn.FnExperimental import org.partiql.types.Field import org.partiql.types.PType import org.partiql.types.PType.Kind @@ -804,7 +804,7 @@ internal class PlanTyper(private val env: Env) { * @param ctx * @return */ - @OptIn(FnExperimental::class) + override fun visitRexOpCallStatic(node: Rex.Op.Call.Static, ctx: CompilerType?): Rex { // Apply the coercions as explicit casts val args: List = node.args.map { @@ -836,7 +836,7 @@ internal class PlanTyper(private val env: Env) { * @param ctx * @return */ - @OptIn(FnExperimental::class) + override fun visitRexOpCallDynamic(node: Rex.Op.Call.Dynamic, ctx: CompilerType?): Rex { val types = node.candidates.map { candidate -> candidate.fn.signature.returns }.toMutableSet() // TODO: Should this always be DYNAMIC? @@ -1168,7 +1168,7 @@ internal class PlanTyper(private val env: Env) { return Rex(type.toCType(), Rex.Op.Struct(fields)) } - @OptIn(FnExperimental::class) + private fun replaceGeneratedTupleUnionArg(node: Rex): Rex? { if (node.op is Rex.Op.Struct && node.type.kind == Kind.ROW) { return node @@ -1259,7 +1259,7 @@ internal class PlanTyper(private val env: Env) { * Let TX be the single-column table that is the result of applying the * to each row of T and eliminating null values <--- all NULL values are eliminated as inputs */ - @OptIn(FnExperimental::class) + fun resolveAgg(node: Rel.Op.Aggregate.Call.Unresolved): Pair { // Type the arguments val args = node.args.map { visitRex(it, null) } From 2fc168b7d9ca6f03dd30868e2cc8d940161a5d48 Mon Sep 17 00:00:00 2001 From: "R. C. Howell" Date: Mon, 29 Jul 2024 10:53:50 -0700 Subject: [PATCH 4/7] Internalizes functions to the planner as an intermediate split step --- .../org/partiql/eval/internal/Compiler.kt | 6 +- .../org/partiql/eval/internal/Symbols.kt | 21 ++--- .../eval/internal/operator/Operator.kt | 6 +- .../internal/operator/rel/RelAggregate.kt | 7 +- .../internal/operator/rex/ExprCallDynamic.kt | 5 +- .../internal/operator/rex/ExprCallStatic.kt | 5 +- .../eval/internal/PartiQLEngineDefaultTest.kt | 4 +- .../operator/rex/ExprCallDynamicTest.kt | 9 +- partiql-planner/api/partiql-planner.api | 84 +++++++++++++++++++ partiql-planner/build.gradle.kts | 1 - .../org/partiql/planner/internal/Env.kt | 49 ++++++----- .../partiql/planner/internal/FnResolver.kt | 2 +- .../planner/internal/fn/SqlFnProvider.kt | 25 +++--- .../planner/internal/fn/builtins/FnAbs.kt | 1 - .../planner/internal/fn/builtins/FnAnd.kt | 1 - .../planner/internal/fn/builtins/FnBetween.kt | 1 - .../internal/fn/builtins/FnBitLength.kt | 1 - .../internal/fn/builtins/FnBitwiseAnd.kt | 1 - .../internal/fn/builtins/FnCardinality.kt | 1 - .../internal/fn/builtins/FnCharLength.kt | 1 - .../planner/internal/fn/builtins/FnCollAgg.kt | 3 + .../planner/internal/fn/builtins/FnConcat.kt | 1 - .../internal/fn/builtins/FnCurrentDate.kt | 1 - .../internal/fn/builtins/FnCurrentUser.kt | 1 - .../internal/fn/builtins/FnDateAddDay.kt | 1 - .../internal/fn/builtins/FnDateAddHour.kt | 1 - .../internal/fn/builtins/FnDateAddMinute.kt | 1 - .../internal/fn/builtins/FnDateAddMonth.kt | 1 - .../internal/fn/builtins/FnDateAddSecond.kt | 1 - .../internal/fn/builtins/FnDateAddYear.kt | 1 - .../internal/fn/builtins/FnDateDiffDay.kt | 1 - .../internal/fn/builtins/FnDateDiffHour.kt | 1 - .../internal/fn/builtins/FnDateDiffMinute.kt | 1 - .../internal/fn/builtins/FnDateDiffMonth.kt | 1 - .../internal/fn/builtins/FnDateDiffSecond.kt | 1 - .../internal/fn/builtins/FnDateDiffYear.kt | 1 - .../planner/internal/fn/builtins/FnDivide.kt | 1 - .../planner/internal/fn/builtins/FnEq.kt | 1 - .../planner/internal/fn/builtins/FnExtract.kt | 1 - .../planner/internal/fn/builtins/FnGt.kt | 1 - .../planner/internal/fn/builtins/FnGte.kt | 1 - .../internal/fn/builtins/FnInCollection.kt | 1 - .../planner/internal/fn/builtins/FnIsAny.kt | 1 - .../planner/internal/fn/builtins/FnIsBag.kt | 1 - .../internal/fn/builtins/FnIsBinary.kt | 1 - .../planner/internal/fn/builtins/FnIsBlob.kt | 1 - .../planner/internal/fn/builtins/FnIsBool.kt | 1 - .../planner/internal/fn/builtins/FnIsByte.kt | 1 - .../planner/internal/fn/builtins/FnIsChar.kt | 1 - .../planner/internal/fn/builtins/FnIsClob.kt | 1 - .../planner/internal/fn/builtins/FnIsDate.kt | 1 - .../internal/fn/builtins/FnIsDecimal.kt | 1 - .../fn/builtins/FnIsDecimalArbitrary.kt | 1 - .../internal/fn/builtins/FnIsFloat32.kt | 1 - .../internal/fn/builtins/FnIsFloat64.kt | 1 - .../planner/internal/fn/builtins/FnIsInt.kt | 1 - .../planner/internal/fn/builtins/FnIsInt16.kt | 1 - .../planner/internal/fn/builtins/FnIsInt32.kt | 1 - .../planner/internal/fn/builtins/FnIsInt64.kt | 1 - .../planner/internal/fn/builtins/FnIsInt8.kt | 1 - .../internal/fn/builtins/FnIsInterval.kt | 1 - .../planner/internal/fn/builtins/FnIsList.kt | 1 - .../internal/fn/builtins/FnIsMissing.kt | 1 - .../planner/internal/fn/builtins/FnIsNull.kt | 1 - .../planner/internal/fn/builtins/FnIsSexp.kt | 1 - .../internal/fn/builtins/FnIsString.kt | 1 - .../internal/fn/builtins/FnIsStruct.kt | 1 - .../internal/fn/builtins/FnIsSymbol.kt | 1 - .../planner/internal/fn/builtins/FnIsTime.kt | 1 - .../internal/fn/builtins/FnIsTimestamp.kt | 1 - .../planner/internal/fn/builtins/FnLower.kt | 1 - .../planner/internal/fn/builtins/FnLt.kt | 1 - .../planner/internal/fn/builtins/FnLte.kt | 1 - .../planner/internal/fn/builtins/FnMinus.kt | 1 - .../planner/internal/fn/builtins/FnModulo.kt | 1 - .../planner/internal/fn/builtins/FnNeg.kt | 1 - .../planner/internal/fn/builtins/FnNot.kt | 1 - .../internal/fn/builtins/FnOctetLength.kt | 1 - .../planner/internal/fn/builtins/FnOr.kt | 1 - .../planner/internal/fn/builtins/FnPlus.kt | 1 - .../planner/internal/fn/builtins/FnPos.kt | 1 - .../planner/internal/fn/builtins/FnTimes.kt | 1 - .../planner/internal/fn/builtins/FnUpper.kt | 1 - .../planner/internal/fn/builtins/FnUtcnow.kt | 1 - .../fn/builtins/internal/Accumulator.kt | 1 - .../org/partiql/planner/internal/ir/Nodes.kt | 70 ++++++++++------ .../planner/internal/transforms/Symbols.kt | 3 - .../planner/internal/typer/PlanTyper.kt | 8 +- .../main/resources/partiql_plan_internal.ion | 4 +- .../kotlin/org/partiql/planner/PlanTest.kt | 2 +- .../planner/PlannerErrorReportingTests.kt | 2 +- .../internal/exclude/SubsumptionTest.kt | 3 +- .../planner/internal/typer/FnResolverTest.kt | 7 +- .../internal/typer/PartiQLTyperTestBase.kt | 2 +- .../internal/typer/PlanTyperTestsPorted.kt | 2 +- .../planner/internal/typer/ScopeTest.kt | 11 --- .../partiql/runner/executor/EvalExecutor.kt | 4 +- 97 files changed, 214 insertions(+), 202 deletions(-) diff --git a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Compiler.kt b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Compiler.kt index 6accc02d31..34bb74a0c7 100644 --- a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Compiler.kt +++ b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Compiler.kt @@ -56,8 +56,7 @@ import org.partiql.plan.Rex import org.partiql.plan.Statement import org.partiql.plan.debug.PlanPrinter import org.partiql.plan.visitor.PlanBaseVisitor -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.FnExperimental +import org.partiql.planner.internal.fn.Agg import org.partiql.types.PType import org.partiql.value.PartiQLValueExperimental import java.lang.IllegalStateException @@ -179,7 +178,6 @@ internal class Compiler( return RelAggregate(input, groups, calls) } - override fun visitRelOpAggregateCall(node: Rel.Op.Aggregate.Call, ctx: PType?): Operator.Aggregation { val args = node.args.map { visitRex(it, it.type).modeHandled() } val setQuantifier: Operator.Aggregation.SetQuantifier = when (node.setQuantifier) { @@ -212,7 +210,6 @@ internal class Compiler( return ExprPathIndex(root, index) } - override fun visitRexOpCallStatic(node: Rex.Op.Call.Static, ctx: PType?): Operator { val fn = symbols.getFn(node.fn) val args = node.args.map { visitRex(it, ctx) }.toTypedArray() @@ -225,7 +222,6 @@ internal class Compiler( } } - override fun visitRexOpCallDynamic(node: Rex.Op.Call.Dynamic, ctx: PType?): Operator { val args = node.args.map { visitRex(it, ctx).modeHandled() }.toTypedArray() // Check candidate list size diff --git a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Symbols.kt b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Symbols.kt index 5987b5bb88..d45b13d726 100644 --- a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Symbols.kt +++ b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Symbols.kt @@ -1,4 +1,3 @@ -@file:OptIn(FnExperimental::class) package org.partiql.eval.internal @@ -7,13 +6,11 @@ import org.partiql.eval.internal.operator.rex.ExprVarGlobal import org.partiql.plan.Catalog import org.partiql.plan.PartiQLPlan import org.partiql.plan.Ref -import org.partiql.spi.connector.ConnectorAggProvider +import org.partiql.planner.internal.fn.Agg +import org.partiql.planner.internal.fn.Fn +import org.partiql.planner.internal.fn.SqlFnProvider import org.partiql.spi.connector.ConnectorBindings -import org.partiql.spi.connector.ConnectorFnProvider import org.partiql.spi.connector.ConnectorPath -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental /** * @@ -26,11 +23,13 @@ internal class Symbols private constructor(private val catalogs: Array) { private class C( val name: String, val bindings: ConnectorBindings, - val functions: ConnectorFnProvider, - val aggregations: ConnectorAggProvider, val items: Array, ) { + // TEMPORARY FOR DEPENDENCY REASONS + fun getFn(path: ConnectorPath, specific: String): Fn? = SqlFnProvider.getFn(specific) + fun getAgg(path: ConnectorPath, specific: String): Agg? = SqlFnProvider.getAgg(specific) + override fun toString(): String = name } @@ -52,7 +51,7 @@ internal class Symbols private constructor(private val catalogs: Array) { } // Lookup in connector val path = ConnectorPath(item.path) - return catalog.functions.getFn(path, item.specific) + return catalog.getFn(path, item.specific) ?: error("Catalog `$catalog` has no entry for function $item") } @@ -64,7 +63,7 @@ internal class Symbols private constructor(private val catalogs: Array) { } // Lookup in connector val path = ConnectorPath(item.path) - return catalog.aggregations.getAgg(path, item.specific) + return catalog.getAgg(path, item.specific) ?: error("Catalog `$catalog` has no entry for aggregation function $item") } @@ -85,8 +84,6 @@ internal class Symbols private constructor(private val catalogs: Array) { C( name = it.name, bindings = connector.getBindings(), - functions = connector.getFunctions(), - aggregations = connector.getAggregations(), items = it.items.toTypedArray() ) }.toTypedArray() diff --git a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/Operator.kt b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/Operator.kt index 216e0fc398..0590dcea1b 100644 --- a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/Operator.kt +++ b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/Operator.kt @@ -3,9 +3,7 @@ package org.partiql.eval.internal.operator import org.partiql.eval.internal.Environment import org.partiql.eval.internal.Record import org.partiql.eval.value.Datum -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.FnExperimental -import org.partiql.value.PartiQLValueExperimental +import org.partiql.planner.internal.fn.Agg internal sealed interface Operator { @@ -14,7 +12,6 @@ internal sealed interface Operator { */ interface Expr : Operator { - @OptIn(PartiQLValueExperimental::class) fun eval(env: Environment): Datum } @@ -30,7 +27,6 @@ internal sealed interface Operator { interface Aggregation : Operator { - val delegate: Agg val args: List diff --git a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rel/RelAggregate.kt b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rel/RelAggregate.kt index ddbe96d0ed..cf1cd99c57 100644 --- a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rel/RelAggregate.kt +++ b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rel/RelAggregate.kt @@ -4,8 +4,7 @@ import org.partiql.eval.internal.Environment import org.partiql.eval.internal.Record import org.partiql.eval.internal.operator.Operator import org.partiql.eval.value.Datum -import org.partiql.spi.fn.Agg -import org.partiql.spi.fn.FnExperimental +import org.partiql.planner.internal.fn.Agg import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType @@ -51,13 +50,13 @@ internal class RelAggregate( * * @property seen maintains which values have already been seen. If null, we accumulate all values coming through. */ - class AccumulatorWrapper @OptIn(PartiQLValueExperimental::class, FnExperimental::class) constructor( + class AccumulatorWrapper @OptIn(PartiQLValueExperimental::class) constructor( val delegate: Agg.Accumulator, val args: List, val seen: TreeSet>? ) - @OptIn(PartiQLValueExperimental::class, FnExperimental::class) + @OptIn(PartiQLValueExperimental::class) override fun open(env: Environment) { input.open(env) for (inputRecord in input) { diff --git a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamic.kt b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamic.kt index f95a73073e..53f0f185fd 100644 --- a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamic.kt +++ b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamic.kt @@ -5,8 +5,7 @@ import org.partiql.eval.internal.Environment import org.partiql.eval.internal.operator.Operator import org.partiql.eval.value.Datum import org.partiql.plan.Ref -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental +import org.partiql.planner.internal.fn.Fn import org.partiql.types.PType import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental @@ -20,7 +19,7 @@ import org.partiql.value.PartiQLValueType * [ExprCallStatic]'s. By doing this, this implementation can evaluate ([eval]) the input [Record], execute and gather the * arguments, and pass the [PartiQLValue]s directly to the [Candidate.eval]. */ -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal class ExprCallDynamic( private val name: String, private val candidates: Array, diff --git a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallStatic.kt b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallStatic.kt index cdf30858cd..c4cc765910 100644 --- a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallStatic.kt +++ b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallStatic.kt @@ -3,11 +3,10 @@ package org.partiql.eval.internal.operator.rex import org.partiql.eval.internal.Environment import org.partiql.eval.internal.operator.Operator import org.partiql.eval.value.Datum -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental +import org.partiql.planner.internal.fn.Fn import org.partiql.value.PartiQLValueExperimental -@OptIn(FnExperimental::class, PartiQLValueExperimental::class) +@OptIn(PartiQLValueExperimental::class) internal class ExprCallStatic( private val fn: Fn, private val inputs: Array, diff --git a/partiql-eval/src/test/kotlin/org/partiql/eval/internal/PartiQLEngineDefaultTest.kt b/partiql-eval/src/test/kotlin/org/partiql/eval/internal/PartiQLEngineDefaultTest.kt index f0ff058ecd..957b38d840 100644 --- a/partiql-eval/src/test/kotlin/org/partiql/eval/internal/PartiQLEngineDefaultTest.kt +++ b/partiql-eval/src/test/kotlin/org/partiql/eval/internal/PartiQLEngineDefaultTest.kt @@ -1258,7 +1258,7 @@ class PartiQLEngineDefaultTest { internal fun assert() { val statement = parser.parse(input).root - val catalogBuilder = MemoryCatalog.PartiQL().name("memory") + val catalogBuilder = MemoryCatalog.builder().name("memory") globals.forEach { global -> catalogBuilder.define(global.name, global.type, loader.loadSingleElement(global.value)) } @@ -1344,7 +1344,7 @@ class PartiQLEngineDefaultTest { private fun run(mode: PartiQLEngine.Mode): Pair { val statement = parser.parse(input).root - val catalog = MemoryCatalog.PartiQL().name("memory").build() + val catalog = MemoryCatalog.builder().name("memory").build() val connector = MemoryConnector(catalog) val connectorSession = object : ConnectorSession { override fun getQueryId(): String = "q" diff --git a/partiql-eval/src/test/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamicTest.kt b/partiql-eval/src/test/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamicTest.kt index 8fe82ab9fa..80e7836e9b 100644 --- a/partiql-eval/src/test/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamicTest.kt +++ b/partiql-eval/src/test/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamicTest.kt @@ -13,10 +13,9 @@ import org.partiql.eval.value.Datum.boolValue import org.partiql.eval.value.Datum.int32Value import org.partiql.eval.value.Datum.listValue import org.partiql.eval.value.Datum.stringValue -import org.partiql.spi.fn.Fn -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.Fn +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType @@ -64,7 +63,7 @@ class ExprCallDynamicTest { PartiQLValueType.ANY to PartiQLValueType.ANY, // Index 12 ) - @OptIn(FnExperimental::class, PartiQLValueExperimental::class) + @OptIn(PartiQLValueExperimental::class) internal val candidates = params.mapIndexed { index, it -> ExprCallDynamic.Candidate( fn = object : Fn { diff --git a/partiql-planner/api/partiql-planner.api b/partiql-planner/api/partiql-planner.api index 461c06d269..0b46df75de 100644 --- a/partiql-planner/api/partiql-planner.api +++ b/partiql-planner/api/partiql-planner.api @@ -321,3 +321,87 @@ public final class org/partiql/planner/catalog/Table$Handle { public fun (Lorg/partiql/planner/catalog/Name;Lorg/partiql/planner/catalog/Table;)V } +public abstract interface class org/partiql/planner/internal/fn/Agg { + public abstract fun accumulator ()Lorg/partiql/planner/internal/fn/Agg$Accumulator; + public abstract fun getSignature ()Lorg/partiql/planner/internal/fn/AggSignature; +} + +public abstract interface class org/partiql/planner/internal/fn/Agg$Accumulator { + public abstract fun next ([Lorg/partiql/value/PartiQLValue;)V + public abstract fun value ()Lorg/partiql/value/PartiQLValue; +} + +public final class org/partiql/planner/internal/fn/AggSignature { + public final field description Ljava/lang/String; + public final field isDecomposable Z + public final field isNullable Z + public final field name Ljava/lang/String; + public final field parameters Ljava/util/List; + public final field returns Lorg/partiql/types/PType; + public fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZ)V + public synthetic fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZILkotlin/jvm/internal/DefaultConstructorMarker;)V + public fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZ)V + public synthetic fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZILkotlin/jvm/internal/DefaultConstructorMarker;)V + public fun equals (Ljava/lang/Object;)Z + public final fun getSpecific ()Ljava/lang/String; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + +public abstract interface class org/partiql/planner/internal/fn/Fn { + public abstract fun getSignature ()Lorg/partiql/planner/internal/fn/FnSignature; + public abstract fun invoke ([Lorg/partiql/value/PartiQLValue;)Lorg/partiql/value/PartiQLValue; +} + +public final class org/partiql/planner/internal/fn/FnParameter { + public fun (Ljava/lang/String;Lorg/partiql/types/PType;)V + public fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;)V + public final fun component1 ()Ljava/lang/String; + public final fun component2 ()Lorg/partiql/types/PType; + public final fun copy (Ljava/lang/String;Lorg/partiql/types/PType;)Lorg/partiql/planner/internal/fn/FnParameter; + public static synthetic fun copy$default (Lorg/partiql/planner/internal/fn/FnParameter;Ljava/lang/String;Lorg/partiql/types/PType;ILjava/lang/Object;)Lorg/partiql/planner/internal/fn/FnParameter; + public fun equals (Ljava/lang/Object;)Z + public final fun getName ()Ljava/lang/String; + public final fun getType ()Lorg/partiql/types/PType; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + +public final class org/partiql/planner/internal/fn/FnSignature { + public final field description Ljava/lang/String; + public final field isDeterministic Z + public final field isMissable Z + public final field isMissingCall Z + public final field isNullCall Z + public final field isNullable Z + public final field name Ljava/lang/String; + public final field parameters Ljava/util/List; + public final field returns Lorg/partiql/types/PType; + public fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZ)V + public synthetic fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZILkotlin/jvm/internal/DefaultConstructorMarker;)V + public fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZZZZ)V + public synthetic fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZZZZILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/lang/String; + public final fun component2 ()Lorg/partiql/types/PType; + public final fun component3 ()Ljava/util/List; + public final fun component4 ()Ljava/lang/String; + public final fun component5 ()Z + public final fun component6 ()Z + public final fun component7 ()Z + public final fun component8 ()Z + public final fun component9 ()Z + public final fun copy (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZ)Lorg/partiql/planner/internal/fn/FnSignature; + public static synthetic fun copy$default (Lorg/partiql/planner/internal/fn/FnSignature;Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZILjava/lang/Object;)Lorg/partiql/planner/internal/fn/FnSignature; + public fun equals (Ljava/lang/Object;)Z + public final fun getSpecific ()Ljava/lang/String; + public fun hashCode ()I + public final fun sql ()Ljava/lang/String; + public fun toString ()Ljava/lang/String; +} + +public final class org/partiql/planner/internal/fn/SqlFnProvider { + public static final field INSTANCE Lorg/partiql/planner/internal/fn/SqlFnProvider; + public final fun getAgg (Ljava/lang/String;)Lorg/partiql/planner/internal/fn/Agg; + public final fun getFn (Ljava/lang/String;)Lorg/partiql/planner/internal/fn/Fn; +} + diff --git a/partiql-planner/build.gradle.kts b/partiql-planner/build.gradle.kts index 11c7dc9c9a..9e396a563a 100644 --- a/partiql-planner/build.gradle.kts +++ b/partiql-planner/build.gradle.kts @@ -105,7 +105,6 @@ tasks.register("codegen") { "--poems", "builder", "--poems", "util", "--opt-in", "org.partiql.value.PartiQLValueExperimental", - "--opt-in", "org.partiql.spi.fn.FnExperimental", "./src/main/resources/partiql_plan_internal.ion" ) } diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt index 3b3178de99..23ab3c1ecb 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt @@ -5,6 +5,7 @@ import org.partiql.planner.catalog.Name import org.partiql.planner.internal.casts.CastTable import org.partiql.planner.internal.casts.Coercions import org.partiql.planner.internal.fn.AggSignature +import org.partiql.planner.internal.fn.SqlFnProvider import org.partiql.planner.internal.ir.Ref import org.partiql.planner.internal.ir.Rel import org.partiql.planner.internal.ir.Rex @@ -19,12 +20,8 @@ import org.partiql.planner.internal.ir.rexOpCastResolved import org.partiql.planner.internal.ir.rexOpVarGlobal import org.partiql.planner.internal.typer.CompilerType import org.partiql.planner.internal.typer.Scope.Companion.toPath -import org.partiql.spi.BindingCase -import org.partiql.spi.BindingName import org.partiql.spi.BindingPath import org.partiql.spi.connector.ConnectorMetadata -import org.partiql.planner.internal.fn.AggSignature -import org.partiql.planner.internal.fn.FnExperimental import org.partiql.types.PType import org.partiql.types.PType.Kind @@ -53,6 +50,11 @@ internal class Env(private val session: Session) { */ private val objects: PathResolverObj = PathResolverObj(catalog, catalogs, session) + /** + * A [SqlFnProvider] for looking up built-in functions. + */ + private val fns: SqlFnProvider = SqlFnProvider + /** * This function looks up a global [BindingPath], returning a global reference expression. * @@ -75,19 +77,24 @@ internal class Env(private val session: Session) { val tail = path.steps.drop(depth) return if (tail.isEmpty()) root else root.toPath(tail) } - + fun resolveFn(path: BindingPath, args: List): Rex? { - val item = fns.lookup(path) ?: return null - // Invoke FnResolver to determine if we made a match - val variants = item.handle.entity.getVariants() + // Assume all functions are defined in the current catalog and reject qualified routine names. + if (path.steps.size > 1) { + error("Qualified functions are not supported.") + } + val catalog = session.getCatalog() + val name = path.steps.last().name.lowercase() + // Invoke existing function resolution logic + val variants = fns.lookupFn(name) ?: return null val match = FnResolver.resolve(variants, args.map { it.type }) // If Type mismatch, then we return a missingOp whose trace is all possible candidates. if (match == null) { val candidates = variants.map { fnSignature -> rexOpCallDynamicCandidate( fn = refFn( - item.catalog, - name = Name.of(item.handle.path.steps), + catalog = catalog, + name = Name.of(name), signature = fnSignature ), coercions = emptyList() @@ -104,8 +111,8 @@ internal class Env(private val session: Session) { // Create an internal typed reference for every candidate rexOpCallDynamicCandidate( fn = refFn( - catalog = item.catalog, - name = Name.of(item.handle.path.steps), + catalog = catalog, + name = Name.of(name), signature = it.signature, ), coercions = it.mapping.toList(), @@ -117,8 +124,8 @@ internal class Env(private val session: Session) { is FnMatch.Static -> { // Create an internal typed reference val ref = refFn( - catalog = item.catalog, - name = Name.of(item.handle.path.steps), + catalog = catalog, + name = Name.of(name), signature = match.signature, ) // Apply the coercions as explicit casts @@ -134,17 +141,18 @@ internal class Env(private val session: Session) { } } - fun resolveAgg(name: String, setQuantifier: Rel.Op.Aggregate.SetQuantifier, args: List): Rel.Op.Aggregate.Call.Resolved? { + fun resolveAgg(path: String, setQuantifier: Rel.Op.Aggregate.SetQuantifier, args: List): Rel.Op.Aggregate.Call.Resolved? { // TODO: Eventually, do we want to support sensitive lookup? With a path? - val path = BindingPath(listOf(BindingName(name, BindingCase.INSENSITIVE))) - val item = aggs.lookup(path) ?: return null - val candidates = item.handle.entity.getVariants() + val catalog = session.getCatalog() + val name = path.lowercase() + // Invoke existing function resolution logic + val candidates = fns.lookupAgg(name) ?: return null val parameters = args.mapIndexed { i, arg -> arg.type } val match = match(candidates, parameters) ?: return null val agg = match.first val mapping = match.second // Create an internal typed reference - val ref = refAgg(item.catalog, Name.of(item.handle.path.steps), agg) + val ref = refAgg(catalog, Name.of(name), agg) // Apply the coercions as explicit casts val coercions: List = args.mapIndexed { i, arg -> when (val cast = mapping[i]) { @@ -206,7 +214,6 @@ internal class Env(private val session: Session) { return userInputPath.steps.size + actualAbsolutePath.size - pathSentToConnector.steps.size } - private fun match(candidates: List, args: List): Pair>? { // 1. Check for an exact match for (candidate in candidates) { @@ -232,7 +239,7 @@ internal class Env(private val session: Session) { /** * Check if this function accepts the exact input argument types. Assume same arity. */ - + private fun AggSignature.matches(args: List): Boolean { for (i in args.indices) { val a = args[i] diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnResolver.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnResolver.kt index c1ba79edc5..a7c6c2f9bd 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnResolver.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnResolver.kt @@ -1,10 +1,10 @@ package org.partiql.planner.internal import org.partiql.planner.internal.casts.Coercions +import org.partiql.planner.internal.fn.FnSignature import org.partiql.planner.internal.ir.Ref import org.partiql.planner.internal.typer.CompilerType import org.partiql.planner.internal.typer.PlanTyper.Companion.toCType -import org.partiql.planner.internal.fn.FnSignature import org.partiql.types.PType.Kind /** diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlFnProvider.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlFnProvider.kt index 2f6f5bab9a..7b52b6b6eb 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlFnProvider.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlFnProvider.kt @@ -19,15 +19,20 @@ package org.partiql.planner.internal.fn */ public object SqlFnProvider { - // planner and evaluator lookup - private val fnNameIndex: Map = SqlBuiltins.builtins.associateBy { it.signature.name } - private val fnSpecIndex: Map = SqlBuiltins.builtins.associateBy { it.signature.specific } - public fun getFnByName(name: String): Fn? = fnNameIndex[name] - public fun getFnBySpecific(specific: String): Fn? = fnSpecIndex[specific] + private val fnNameIndex = SqlBuiltins.builtins.groupBy({ it.signature.name }, { it.signature }) + private val fnSpecIndex = SqlBuiltins.builtins.associateBy { it.signature.specific } + private val aggNameIndex = SqlBuiltins.aggregations.groupBy({ it.signature.name }, { it.signature }) + private val aggSpecIndex = SqlBuiltins.aggregations.associateBy { it.signature.specific } - // planner and evaluator lookup - private val aggNameIndex: Map = SqlBuiltins.aggregations.associateBy { it.signature.name } - private val aggSpecIndex: Map = SqlBuiltins.aggregations.associateBy { it.signature.specific } - public fun getAggByName(name: String): Agg? = aggNameIndex[name] - public fun getAggBySpecific(specific: String): Agg? = aggSpecIndex[specific] + // + // INTERNAL PLANNER APIS + // + internal fun lookupFn(name: String) = fnNameIndex[name] + internal fun lookupAgg(name: String) = aggNameIndex[name] + + // + // TEMPORARY PUBLIC EVALUATOR APIS + // + public fun getFn(specific: String): Fn? = fnSpecIndex[specific] + public fun getAgg(specific: String): Agg? = aggSpecIndex[specific] } diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAbs.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAbs.kt index c85d15b69a..396ede6717 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAbs.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAbs.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAnd.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAnd.kt index 40f15afb94..4aca28cdeb 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAnd.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAnd.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBetween.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBetween.kt index b65f5e1d7b..2dc81fefd8 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBetween.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBetween.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ClobValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitLength.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitLength.kt index 856ee9cb1f..8afb7269d9 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitLength.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitLength.kt @@ -1,7 +1,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ClobValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitwiseAnd.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitwiseAnd.kt index 235f999f44..0864060e3c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitwiseAnd.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitwiseAnd.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int16Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCardinality.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCardinality.kt index 62934af09e..1abe347040 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCardinality.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCardinality.kt @@ -1,7 +1,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BagValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCharLength.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCharLength.kt index 04fa1e2550..1d93cbbcb5 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCharLength.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCharLength.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ClobValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCollAgg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCollAgg.kt index 391402b80d..2fe58fb6cd 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCollAgg.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCollAgg.kt @@ -1,5 +1,6 @@ // ktlint-disable filename @file:Suppress("ClassName") +@file:OptIn(PartiQLValueExperimental::class) package org.partiql.planner.internal.fn.builtins @@ -17,6 +18,7 @@ import org.partiql.planner.internal.fn.builtins.internal.AccumulatorMin import org.partiql.planner.internal.fn.builtins.internal.AccumulatorSum import org.partiql.value.BagValue import org.partiql.value.PartiQLValue +import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType import org.partiql.value.check @@ -24,6 +26,7 @@ internal abstract class Fn_COLL_AGG__BAG__ANY : Fn { abstract fun getAccumulator(): Agg.Accumulator + @OptIn(PartiQLValueExperimental::class) companion object { @JvmStatic internal fun createSignature(name: String) = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnConcat.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnConcat.kt index 91421ec3a9..f3a6105880 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnConcat.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnConcat.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ClobValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentDate.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentDate.kt index 8a96d53731..fc16aff0ea 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentDate.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentDate.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentUser.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentUser.kt index 0b6d269d8e..734cb11d3a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentUser.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentUser.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddDay.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddDay.kt index 9db3cb5c3c..04d88cfd71 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddDay.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddDay.kt @@ -6,7 +6,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DateValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddHour.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddHour.kt index 89f5d3a765..220f25e3ec 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddHour.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddHour.kt @@ -6,7 +6,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int32Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMinute.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMinute.kt index ef97829121..ce6e54d0ba 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMinute.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMinute.kt @@ -6,7 +6,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int32Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMonth.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMonth.kt index 580267eda1..fd4777926c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMonth.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMonth.kt @@ -6,7 +6,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DateValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddSecond.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddSecond.kt index 318f12efdb..e721000456 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddSecond.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddSecond.kt @@ -6,7 +6,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int32Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddYear.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddYear.kt index 1dc8602523..65fd3b0c7c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddYear.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddYear.kt @@ -6,7 +6,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DateValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffDay.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffDay.kt index 77a026730b..a5bb15078a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffDay.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffDay.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffHour.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffHour.kt index 90ef086feb..b0d495a3c2 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffHour.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffHour.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMinute.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMinute.kt index f18fd67a99..05af59afbd 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMinute.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMinute.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMonth.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMonth.kt index e9704c516d..35abc47e18 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMonth.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMonth.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffSecond.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffSecond.kt index 194c848c7a..5427480436 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffSecond.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffSecond.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffYear.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffYear.kt index 75c07249a7..e6490ac965 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffYear.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffYear.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDivide.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDivide.kt index 9ebbcdcb5b..e1dc7ab362 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDivide.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDivide.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnEq.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnEq.kt index 468ba01a44..39bb2d5cdc 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnEq.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnEq.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExtract.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExtract.kt index 5060d6ee95..c2fe3e5a40 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExtract.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExtract.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DateValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGt.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGt.kt index 76c9b9f233..396ac73579 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGt.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGt.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGte.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGte.kt index 57d1bac674..a61a85023b 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGte.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGte.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnInCollection.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnInCollection.kt index 0cf8d14089..d750b45336 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnInCollection.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnInCollection.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BagValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsAny.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsAny.kt index 9d3d3e89b5..18544137c5 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsAny.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsAny.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBag.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBag.kt index 60db2f5e6f..9ee2ae399e 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBag.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBag.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BagValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBinary.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBinary.kt index e18c662121..ed9d0f81d7 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBinary.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBinary.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BinaryValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBlob.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBlob.kt index d20c9459db..ca46f50317 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBlob.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBlob.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BlobValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBool.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBool.kt index fafee6415c..b8cab9f458 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBool.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBool.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsByte.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsByte.kt index ef5ea5a880..19f435a4fb 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsByte.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsByte.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ByteValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsChar.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsChar.kt index affb7e60b2..a6cf30831c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsChar.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsChar.kt @@ -5,7 +5,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.errors.TypeCheckException import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.CharValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsClob.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsClob.kt index 43862e32d6..6ea8a90bf8 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsClob.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsClob.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ClobValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDate.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDate.kt index 9fb3b7fd30..f19a929ae5 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDate.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDate.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DateValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimal.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimal.kt index ee99a1fed5..8a7db8569d 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimal.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimal.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimalArbitrary.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimalArbitrary.kt index 5fddb2f16e..818c428d45 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimalArbitrary.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimalArbitrary.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat32.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat32.kt index 7b902ebaa6..38b838bab8 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat32.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat32.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Float32Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat64.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat64.kt index a75562bb02..e7d5bfcd89 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat64.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat64.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Float32Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt.kt index f38c610b90..c5482f9db3 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int16Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt16.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt16.kt index 0e9e5b6ddf..7ade6512e0 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt16.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt16.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int16Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt32.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt32.kt index b2c50b67db..dd8259847e 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt32.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt32.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int16Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt64.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt64.kt index 37291ca156..5f035f3392 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt64.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt64.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int16Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt8.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt8.kt index b6aef74d61..09ac7f4d8f 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt8.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt8.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int16Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInterval.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInterval.kt index bdfa373102..d6953454f0 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInterval.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInterval.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.IntervalValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsList.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsList.kt index 1a8f891f1d..d21c8b1f13 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsList.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsList.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ListValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsMissing.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsMissing.kt index 6a08bfc77c..61aa437f94 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsMissing.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsMissing.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.MissingValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsNull.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsNull.kt index 841098ad3a..d2d70cbc55 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsNull.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsNull.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSexp.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSexp.kt index c4630d1ab0..fc8c74f4bd 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSexp.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSexp.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsString.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsString.kt index 0e052e9678..b87f22ed8e 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsString.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsString.kt @@ -5,7 +5,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.errors.TypeCheckException import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.Int32Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsStruct.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsStruct.kt index 466ba9551b..5d05914740 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsStruct.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsStruct.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSymbol.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSymbol.kt index 30d38df3ab..f6304dbaf7 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSymbol.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSymbol.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTime.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTime.kt index bc5c5c97e3..7f7283347f 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTime.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTime.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTimestamp.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTimestamp.kt index c97a7b5bfe..49ffbc5f1c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTimestamp.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTimestamp.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLower.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLower.kt index 076b0ea746..3686befa52 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLower.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLower.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLt.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLt.kt index c7f5a580b4..d2337a8784 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLt.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLt.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLte.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLte.kt index 83a1705b45..51be999572 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLte.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLte.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnMinus.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnMinus.kt index ff3f597e1d..548aa190b9 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnMinus.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnMinus.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnModulo.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnModulo.kt index 2bc4bffdc8..c4866f8560 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnModulo.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnModulo.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNeg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNeg.kt index 3032b9b289..52e0023343 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNeg.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNeg.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNot.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNot.kt index 59c93591e4..82c35cd417 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNot.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNot.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOctetLength.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOctetLength.kt index 95380c113a..aef6315e11 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOctetLength.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOctetLength.kt @@ -1,7 +1,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ClobValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOr.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOr.kt index b654fcfce2..88e6367a59 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOr.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOr.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.BoolValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPlus.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPlus.kt index 2d0fe4fbb0..762a1ed47d 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPlus.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPlus.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPos.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPos.kt index 4cce38a92b..22991c9c6d 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPos.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPos.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTimes.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTimes.kt index 5e62782195..fe1442222c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTimes.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTimes.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.DecimalValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUpper.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUpper.kt index 7fc30a4bd8..3407002de8 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUpper.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUpper.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.ClobValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUtcnow.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUtcnow.kt index c42c563ae0..431b0fe6c1 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUtcnow.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUtcnow.kt @@ -4,7 +4,6 @@ package org.partiql.planner.internal.fn.builtins import org.partiql.planner.internal.fn.Fn - import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/Accumulator.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/Accumulator.kt index 5fbd9b008f..bda1944574 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/Accumulator.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/Accumulator.kt @@ -19,7 +19,6 @@ package org.partiql.planner.internal.fn.builtins.internal import com.amazon.ion.Decimal import org.partiql.errors.TypeCheckException import org.partiql.planner.internal.fn.Agg - import org.partiql.value.BoolValue import org.partiql.value.DecimalValue import org.partiql.value.Float32Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/ir/Nodes.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/ir/Nodes.kt index 39dcd508c5..a806dc1ac0 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/ir/Nodes.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/ir/Nodes.kt @@ -1,13 +1,12 @@ -@file:OptIn( - PartiQLValueExperimental::class, - FnExperimental::class, -) +@file:OptIn(PartiQLValueExperimental::class) package org.partiql.planner.`internal`.ir import org.partiql.errors.Problem import org.partiql.planner.catalog.Identifier import org.partiql.planner.catalog.Name +import org.partiql.planner.internal.fn.AggSignature +import org.partiql.planner.internal.fn.FnSignature import org.partiql.planner.internal.ir.builder.PartiQlPlanBuilder import org.partiql.planner.internal.ir.builder.RefAggBuilder import org.partiql.planner.internal.ir.builder.RefCastBuilder @@ -72,9 +71,6 @@ import org.partiql.planner.internal.ir.builder.RexOpVarUnresolvedBuilder import org.partiql.planner.internal.ir.builder.StatementQueryBuilder import org.partiql.planner.internal.ir.visitor.PlanVisitor import org.partiql.planner.internal.typer.CompilerType -import org.partiql.planner.internal.fn.AggSignature -import org.partiql.planner.internal.fn.FnExperimental -import org.partiql.planner.internal.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import kotlin.collections.Set @@ -193,7 +189,8 @@ internal sealed class Statement : PlanNode() { kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitStatementQuery(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitStatementQuery(this, ctx) internal companion object { @JvmStatic @@ -347,7 +344,8 @@ internal data class Rex( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRexOpPathKey(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRexOpPathKey(this, ctx) internal companion object { @JvmStatic @@ -558,7 +556,8 @@ internal data class Rex( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRexOpNullif(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRexOpNullif(this, ctx) internal companion object { @JvmStatic @@ -575,7 +574,8 @@ internal data class Rex( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRexOpCoalesce(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRexOpCoalesce(this, ctx) internal companion object { @JvmStatic @@ -592,7 +592,8 @@ internal data class Rex( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRexOpCollection(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRexOpCollection(this, ctx) internal companion object { @JvmStatic @@ -609,7 +610,8 @@ internal data class Rex( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRexOpStruct(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRexOpStruct(this, ctx) internal data class Field( @JvmField internal val k: Rex, @@ -650,7 +652,8 @@ internal data class Rex( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRexOpPivot(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRexOpPivot(this, ctx) internal companion object { @JvmStatic @@ -670,7 +673,8 @@ internal data class Rex( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRexOpSubquery(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRexOpSubquery(this, ctx) internal enum class Coercion { SCALAR, ROW, @@ -693,7 +697,8 @@ internal data class Rex( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRexOpSelect(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRexOpSelect(this, ctx) internal companion object { @JvmStatic @@ -710,7 +715,8 @@ internal data class Rex( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRexOpTupleUnion(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRexOpTupleUnion(this, ctx) internal companion object { @JvmStatic @@ -746,7 +752,8 @@ internal data class Rex( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRexOpMissing(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRexOpMissing(this, ctx) internal companion object { @JvmStatic @@ -842,7 +849,8 @@ internal data class Rel( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRelOpScanIndexed(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRelOpScanIndexed(this, ctx) internal companion object { @JvmStatic @@ -859,7 +867,8 @@ internal data class Rel( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRelOpUnpivot(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRelOpUnpivot(this, ctx) internal companion object { @JvmStatic @@ -876,7 +885,8 @@ internal data class Rel( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRelOpDistinct(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRelOpDistinct(this, ctx) internal companion object { @JvmStatic @@ -895,7 +905,8 @@ internal data class Rel( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRelOpFilter(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRelOpFilter(this, ctx) internal companion object { @JvmStatic @@ -1034,7 +1045,8 @@ internal data class Rel( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRelOpLimit(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRelOpLimit(this, ctx) internal companion object { @JvmStatic @@ -1053,7 +1065,8 @@ internal data class Rel( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRelOpOffset(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRelOpOffset(this, ctx) internal companion object { @JvmStatic @@ -1072,7 +1085,8 @@ internal data class Rel( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRelOpProject(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRelOpProject(this, ctx) internal companion object { @JvmStatic @@ -1120,7 +1134,8 @@ internal data class Rel( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRelOpAggregate(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRelOpAggregate(this, ctx) internal enum class Strategy { FULL, PARTIAL, @@ -1196,7 +1211,8 @@ internal data class Rel( kids.filterNotNull() } - override fun accept(visitor: PlanVisitor, ctx: C): R = visitor.visitRelOpExclude(this, ctx) + override fun accept(visitor: PlanVisitor, ctx: C): R = + visitor.visitRelOpExclude(this, ctx) internal data class Path( @JvmField internal val root: Rex.Op, diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/transforms/Symbols.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/transforms/Symbols.kt index 935743f314..607d13ee2c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/transforms/Symbols.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/transforms/Symbols.kt @@ -6,7 +6,6 @@ import org.partiql.plan.catalogItemAgg import org.partiql.plan.catalogItemFn import org.partiql.plan.catalogItemValue import org.partiql.planner.internal.ir.Ref -import org.partiql.planner.internal.fn.FnExperimental import org.partiql.plan.Ref as CatalogRef /** @@ -31,13 +30,11 @@ internal class Symbols private constructor() { item = catalogItemValue(ref.name.toList(), ref.type), ) - fun insert(ref: Ref.Fn): CatalogRef = insert( catalog = ref.catalog, item = catalogItemFn(ref.name.toList(), ref.signature.specific), ) - fun insert(ref: Ref.Agg): CatalogRef = insert( catalog = ref.catalog, item = catalogItemAgg(ref.name.toList(), ref.signature.specific), diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/typer/PlanTyper.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/typer/PlanTyper.kt index 2492ea73d9..b14af8887f 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/typer/PlanTyper.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/typer/PlanTyper.kt @@ -55,7 +55,6 @@ import org.partiql.planner.internal.utils.PlanUtils import org.partiql.spi.BindingCase import org.partiql.spi.BindingName import org.partiql.spi.BindingPath -import org.partiql.planner.internal.fn.FnExperimental import org.partiql.types.Field import org.partiql.types.PType import org.partiql.types.PType.Kind @@ -804,7 +803,7 @@ internal class PlanTyper(private val env: Env) { * @param ctx * @return */ - + override fun visitRexOpCallStatic(node: Rex.Op.Call.Static, ctx: CompilerType?): Rex { // Apply the coercions as explicit casts val args: List = node.args.map { @@ -836,7 +835,7 @@ internal class PlanTyper(private val env: Env) { * @param ctx * @return */ - + override fun visitRexOpCallDynamic(node: Rex.Op.Call.Dynamic, ctx: CompilerType?): Rex { val types = node.candidates.map { candidate -> candidate.fn.signature.returns }.toMutableSet() // TODO: Should this always be DYNAMIC? @@ -1168,7 +1167,6 @@ internal class PlanTyper(private val env: Env) { return Rex(type.toCType(), Rex.Op.Struct(fields)) } - private fun replaceGeneratedTupleUnionArg(node: Rex): Rex? { if (node.op is Rex.Op.Struct && node.type.kind == Kind.ROW) { return node @@ -1259,7 +1257,7 @@ internal class PlanTyper(private val env: Env) { * Let TX be the single-column table that is the result of applying the * to each row of T and eliminating null values <--- all NULL values are eliminated as inputs */ - + fun resolveAgg(node: Rel.Op.Aggregate.Call.Unresolved): Pair { // Type the arguments val args = node.args.map { visitRex(it, null) } diff --git a/partiql-planner/src/main/resources/partiql_plan_internal.ion b/partiql-planner/src/main/resources/partiql_plan_internal.ion index e4bc767c83..234e855d29 100644 --- a/partiql-planner/src/main/resources/partiql_plan_internal.ion +++ b/partiql-planner/src/main/resources/partiql_plan_internal.ion @@ -5,8 +5,8 @@ imports::{ partiql_value::'org.partiql.value.PartiQLValue', partiql_value_type::'org.partiql.planner.internal.typer.CompilerType', static_type::'org.partiql.planner.internal.typer.CompilerType', - fn_signature::'org.partiql.spi.fn.FnSignature', - agg_signature::'org.partiql.spi.fn.AggSignature', + fn_signature::'org.partiql.planner.internal.fn.FnSignature', + agg_signature::'org.partiql.planner.internal.fn.AggSignature', problem::'org.partiql.errors.Problem' ], } diff --git a/partiql-planner/src/test/kotlin/org/partiql/planner/PlanTest.kt b/partiql-planner/src/test/kotlin/org/partiql/planner/PlanTest.kt index 90efd47815..3ab8095dec 100644 --- a/partiql-planner/src/test/kotlin/org/partiql/planner/PlanTest.kt +++ b/partiql-planner/src/test/kotlin/org/partiql/planner/PlanTest.kt @@ -89,7 +89,7 @@ class PlanTest { } fun buildMetadata(catalogName: String): ConnectorMetadata { - val catalog = MemoryCatalog.PartiQL().name(catalogName).build() + val catalog = MemoryCatalog.builder().name(catalogName).build() // Insert binding val name = BindingPath( listOf( diff --git a/partiql-planner/src/test/kotlin/org/partiql/planner/PlannerErrorReportingTests.kt b/partiql-planner/src/test/kotlin/org/partiql/planner/PlannerErrorReportingTests.kt index 7f7b6238bf..b6e5e6d2a1 100644 --- a/partiql-planner/src/test/kotlin/org/partiql/planner/PlannerErrorReportingTests.kt +++ b/partiql-planner/src/test/kotlin/org/partiql/planner/PlannerErrorReportingTests.kt @@ -28,7 +28,7 @@ internal class PlannerErrorReportingTests { val queryId = "query" val catalog = MemoryCatalog - .PartiQL() + .builder() .name(catalogName) .define("missing_binding", StaticType.ANY) .define("atomic", StaticType.INT2) diff --git a/partiql-planner/src/test/kotlin/org/partiql/planner/internal/exclude/SubsumptionTest.kt b/partiql-planner/src/test/kotlin/org/partiql/planner/internal/exclude/SubsumptionTest.kt index 7be83f169e..58042d2f85 100644 --- a/partiql-planner/src/test/kotlin/org/partiql/planner/internal/exclude/SubsumptionTest.kt +++ b/partiql-planner/src/test/kotlin/org/partiql/planner/internal/exclude/SubsumptionTest.kt @@ -21,6 +21,7 @@ import org.partiql.plan.relOpExcludeTypeStructWildcard import org.partiql.plan.rexOpVar import org.partiql.planner.PartiQLPlanner import org.partiql.planner.catalog.Session +import org.partiql.plugins.memory.MemoryCatalog import org.partiql.plugins.memory.MemoryConnector import org.partiql.spi.connector.ConnectorSession import java.util.stream.Stream @@ -36,7 +37,7 @@ class SubsumptionTest { override fun getQueryId(): String = "query-id" override fun getUserId(): String = "user-id" } - private val connector = MemoryConnector.partiQL() + private val connector = MemoryConnector(MemoryCatalog("default")) } private fun getExcludeClause(statement: Statement): Rel.Op.Exclude { diff --git a/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/FnResolverTest.kt b/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/FnResolverTest.kt index e271429308..d7ba1e8837 100644 --- a/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/FnResolverTest.kt +++ b/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/FnResolverTest.kt @@ -5,9 +5,8 @@ import org.junit.jupiter.api.fail import org.partiql.planner.internal.FnMatch import org.partiql.planner.internal.FnResolver import org.partiql.planner.internal.typer.PlanTyper.Companion.toCType -import org.partiql.spi.fn.FnExperimental -import org.partiql.spi.fn.FnParameter -import org.partiql.spi.fn.FnSignature +import org.partiql.planner.internal.fn.FnParameter +import org.partiql.planner.internal.fn.FnSignature import org.partiql.types.PType import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType @@ -17,7 +16,7 @@ import org.partiql.value.PartiQLValueType * We may be able to pretty-print with string equals to also simplify things. * Only the "types" of expressions matter, we ignore the underlying ops. */ -@OptIn(PartiQLValueExperimental::class, FnExperimental::class) +@OptIn(PartiQLValueExperimental::class) class FnResolverTest { @Test diff --git a/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/PartiQLTyperTestBase.kt b/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/PartiQLTyperTestBase.kt index 146d080e19..32289a30ca 100644 --- a/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/PartiQLTyperTestBase.kt +++ b/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/PartiQLTyperTestBase.kt @@ -70,7 +70,7 @@ abstract class PartiQLTyperTestBase { */ @OptIn(PartiQLValueExperimental::class) private fun buildMetadata(catalog: String, types: List): ConnectorMetadata { - val cat = MemoryCatalog.PartiQL().name(catalog).build() + val cat = MemoryCatalog.builder().name(catalog).build() val connector = MemoryConnector(cat) // define all bindings diff --git a/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/PlanTyperTestsPorted.kt b/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/PlanTyperTestsPorted.kt index fd9c35e304..2430c974c6 100644 --- a/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/PlanTyperTestsPorted.kt +++ b/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/PlanTyperTestsPorted.kt @@ -191,7 +191,7 @@ internal class PlanTyperTestsPorted { } } map.entries.map { (catalogName, bindings) -> - val catalog = MemoryCatalog.PartiQL().name(catalogName).build() + val catalog = MemoryCatalog.builder().name(catalogName).build() val connector = MemoryConnector(catalog) for (binding in bindings) { val path = binding.first diff --git a/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/ScopeTest.kt b/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/ScopeTest.kt index 4d33edd1ed..6019ad9e03 100644 --- a/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/ScopeTest.kt +++ b/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/ScopeTest.kt @@ -14,7 +14,6 @@ import org.partiql.spi.BindingName import org.partiql.spi.BindingPath import org.partiql.spi.connector.ConnectorHandle import org.partiql.spi.connector.ConnectorMetadata -import org.partiql.spi.fn.FnExperimental import org.partiql.types.PType import kotlin.test.assertEquals import kotlin.test.fail @@ -43,16 +42,6 @@ internal class ScopeTest { override fun getObject(path: BindingPath): ConnectorHandle.Obj? { return null } - - @FnExperimental - override fun getFunction(path: BindingPath): ConnectorHandle.Fn? { - return null - } - - @FnExperimental - override fun getAggregation(path: BindingPath): ConnectorHandle.Agg? { - return null - } } ) .build() diff --git a/test/partiql-tests-runner/src/test/kotlin/org/partiql/runner/executor/EvalExecutor.kt b/test/partiql-tests-runner/src/test/kotlin/org/partiql/runner/executor/EvalExecutor.kt index f78b189b3b..25194982eb 100644 --- a/test/partiql-tests-runner/src/test/kotlin/org/partiql/runner/executor/EvalExecutor.kt +++ b/test/partiql-tests-runner/src/test/kotlin/org/partiql/runner/executor/EvalExecutor.kt @@ -162,13 +162,13 @@ class EvalExecutor( env.fields.forEach { map[it.name] = inferEnv(it.value) } - val catalog = MemoryCatalog.PartiQL().name("default").build() + val catalog = MemoryCatalog.builder().name("default").build() catalog.load(env) return MemoryConnector(catalog) } private fun inferEnv(env: AnyElement): PType { - val catalog = MemoryCatalog.PartiQL().name("conformance_test").build() + val catalog = MemoryCatalog.builder().name("conformance_test").build() val connector = MemoryConnector(catalog) val session = PlannerSession.builder() .catalog("default") From 40f06122bb3e1c2dbc18570440de9a14b2cdf61e Mon Sep 17 00:00:00 2001 From: "R. C. Howell" Date: Mon, 29 Jul 2024 11:01:02 -0700 Subject: [PATCH 5/7] Rebase on V1 --- .../src/main/kotlin/org/partiql/planner/internal/Env.kt | 2 +- .../kotlin/org/partiql/planner/internal/typer/FnResolverTest.kt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt index 23ab3c1ecb..48a9597010 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt @@ -1,7 +1,7 @@ package org.partiql.planner.internal -import org.partiql.planner.catalog.Session import org.partiql.planner.catalog.Name +import org.partiql.planner.catalog.Session import org.partiql.planner.internal.casts.CastTable import org.partiql.planner.internal.casts.Coercions import org.partiql.planner.internal.fn.AggSignature diff --git a/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/FnResolverTest.kt b/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/FnResolverTest.kt index d7ba1e8837..35df0b254b 100644 --- a/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/FnResolverTest.kt +++ b/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/FnResolverTest.kt @@ -4,9 +4,9 @@ import org.junit.jupiter.api.Test import org.junit.jupiter.api.fail import org.partiql.planner.internal.FnMatch import org.partiql.planner.internal.FnResolver -import org.partiql.planner.internal.typer.PlanTyper.Companion.toCType import org.partiql.planner.internal.fn.FnParameter import org.partiql.planner.internal.fn.FnSignature +import org.partiql.planner.internal.typer.PlanTyper.Companion.toCType import org.partiql.types.PType import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType From 7a7be9d6ad57c0fcfedbb300025871e2c04f0d01 Mon Sep 17 00:00:00 2001 From: "R. C. Howell" Date: Mon, 29 Jul 2024 13:28:38 -0700 Subject: [PATCH 6/7] Imports latest V1 functions --- .../org/partiql/planner/internal/fn/builtins/FnAbs.kt | 1 - .../partiql/planner/internal/fn/builtins/FnBitLength.kt | 1 - .../org/partiql/planner/internal/fn/builtins/FnCollAgg.kt | 3 +-- .../org/partiql/planner/internal/fn/builtins/FnEq.kt | 3 ++- .../org/partiql/planner/internal/fn/builtins/FnExtract.kt | 7 ------- .../org/partiql/planner/internal/fn/builtins/FnIsNull.kt | 3 ++- .../org/partiql/planner/internal/fn/builtins/FnMinus.kt | 1 - .../org/partiql/planner/internal/fn/builtins/FnNeg.kt | 1 - .../org/partiql/planner/internal/fn/builtins/FnPlus.kt | 1 - .../partiql/planner/internal/fn/builtins/FnSubstring.kt | 1 - .../org/partiql/planner/internal/fn/builtins/FnTimes.kt | 1 - .../org/partiql/planner/internal/fn/builtins/FnTrim.kt | 1 - .../planner/internal/fn/builtins/internal/Accumulator.kt | 2 +- 13 files changed, 6 insertions(+), 20 deletions(-) diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAbs.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAbs.kt index 396ede6717..b862459804 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAbs.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAbs.kt @@ -36,7 +36,6 @@ import org.partiql.value.intValue import kotlin.math.absoluteValue // TODO: When negate a negative value, we need to consider overflow - @OptIn(PartiQLValueExperimental::class) internal object Fn_ABS__INT8__INT8 : Fn { diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitLength.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitLength.kt index 8afb7269d9..9be33e5e06 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitLength.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitLength.kt @@ -13,7 +13,6 @@ import org.partiql.value.check import org.partiql.value.int32Value // SQL spec section 6.17 contains - @OptIn(PartiQLValueExperimental::class) internal object Fn_BIT_LENGTH__STRING__INT32 : Fn { diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCollAgg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCollAgg.kt index 2fe58fb6cd..194cb6a0f5 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCollAgg.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCollAgg.kt @@ -1,6 +1,5 @@ // ktlint-disable filename @file:Suppress("ClassName") -@file:OptIn(PartiQLValueExperimental::class) package org.partiql.planner.internal.fn.builtins @@ -22,11 +21,11 @@ import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType import org.partiql.value.check +@OptIn(PartiQLValueExperimental::class) internal abstract class Fn_COLL_AGG__BAG__ANY : Fn { abstract fun getAccumulator(): Agg.Accumulator - @OptIn(PartiQLValueExperimental::class) companion object { @JvmStatic internal fun createSignature(name: String) = FnSignature( diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnEq.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnEq.kt index 39bb2d5cdc..f0dd12648f 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnEq.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnEq.kt @@ -10,6 +10,7 @@ import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL +import org.partiql.value.PartiQLValueType.MISSING import org.partiql.value.boolValue /** @@ -47,7 +48,7 @@ internal object Fn_EQ__ANY_ANY__BOOL : Fn { override fun invoke(args: Array): PartiQLValue { val lhs = args[0] val rhs = args[1] - if (lhs.type == ANY || rhs.type == ANY) { + if (lhs.type == MISSING || rhs.type == MISSING) { return boolValue(null) } return boolValue(comparator.compare(lhs, rhs) == 0) diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExtract.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExtract.kt index c2fe3e5a40..6a50b82c64 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExtract.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExtract.kt @@ -24,7 +24,6 @@ import org.partiql.value.int32Value // // Extract Year // - @OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_YEAR__DATE__INT32 : Fn { @@ -66,7 +65,6 @@ internal object Fn_EXTRACT_YEAR__TIMESTAMP__INT32 : Fn { // // Extract Month // - @OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_MONTH__DATE__INT32 : Fn { @@ -150,7 +148,6 @@ internal object Fn_EXTRACT_DAY__TIMESTAMP__INT32 : Fn { // // Extract Hour // - @OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_HOUR__TIME__INT32 : Fn { @@ -192,7 +189,6 @@ internal object Fn_EXTRACT_HOUR__TIMESTAMP__INT32 : Fn { // // Extract Minute // - @OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_MINUTE__TIME__INT32 : Fn { @@ -234,7 +230,6 @@ internal object Fn_EXTRACT_MINUTE__TIMESTAMP__INT32 : Fn { // // Extract Second // - @OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_SECOND__TIME__DECIMAL_ARBITRARY : Fn { @@ -276,7 +271,6 @@ internal object Fn_EXTRACT_SECOND__TIMESTAMP__DECIMAL_ARBITRARY : Fn { // // Extract Timezone Hour // - @OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_TIMEZONE_HOUR__TIME__INT32 : Fn { @@ -326,7 +320,6 @@ internal object Fn_EXTRACT_TIMEZONE_HOUR__TIMESTAMP__INT32 : Fn { // // Extract Timezone Minute // - @OptIn(PartiQLValueExperimental::class) internal object Fn_EXTRACT_TIMEZONE_MINUTE__TIME__INT32 : Fn { diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsNull.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsNull.kt index d2d70cbc55..0376567de3 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsNull.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsNull.kt @@ -10,6 +10,7 @@ import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL +import org.partiql.value.PartiQLValueType.MISSING import org.partiql.value.boolValue @OptIn(PartiQLValueExperimental::class) @@ -26,7 +27,7 @@ internal object Fn_IS_NULL__ANY__BOOL : Fn { ) override fun invoke(args: Array): PartiQLValue { - if (args[0].type == ANY) { + if (args[0].type == MISSING) { return boolValue(true) } return boolValue(args[0].isNull) diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnMinus.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnMinus.kt index 548aa190b9..cd76e4a29a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnMinus.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnMinus.kt @@ -35,7 +35,6 @@ import org.partiql.value.int8Value import org.partiql.value.intValue // TODO: Handle Overflow - @OptIn(PartiQLValueExperimental::class) internal object Fn_MINUS__INT8_INT8__INT8 : Fn { diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNeg.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNeg.kt index 52e0023343..479678f164 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNeg.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNeg.kt @@ -35,7 +35,6 @@ import org.partiql.value.int8Value import org.partiql.value.intValue // TODO: Handle Overflow - @OptIn(PartiQLValueExperimental::class) internal object Fn_NEG__INT8__INT8 : Fn { diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPlus.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPlus.kt index 762a1ed47d..77e1668178 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPlus.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPlus.kt @@ -35,7 +35,6 @@ import org.partiql.value.int8Value import org.partiql.value.intValue // TODO: Handle Overflow - @OptIn(PartiQLValueExperimental::class) internal object Fn_PLUS__INT8_INT8__INT8 : Fn { diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSubstring.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSubstring.kt index 3e368c2dfb..cd5e68d81a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSubstring.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSubstring.kt @@ -93,7 +93,6 @@ import org.partiql.value.symbolValue * L1 = E1 - S1 * return java's substring(C, S1, E1) */ - @OptIn(PartiQLValueExperimental::class) internal object Fn_SUBSTRING__STRING_INT64__STRING : Fn { diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTimes.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTimes.kt index fe1442222c..b1e47bd905 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTimes.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTimes.kt @@ -35,7 +35,6 @@ import org.partiql.value.int8Value import org.partiql.value.intValue // TODO: Handle Overflow - @OptIn(PartiQLValueExperimental::class) internal object Fn_TIMES__INT8_INT8__INT8 : Fn { diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrim.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrim.kt index 2805d707f4..5fdb276541 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrim.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrim.kt @@ -49,7 +49,6 @@ import org.partiql.value.symbolValue * * ` ::= ` * * ` ::= ` */ - @OptIn(PartiQLValueExperimental::class) internal object Fn_TRIM__STRING__STRING : Fn { diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/Accumulator.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/Accumulator.kt index bda1944574..f985f54b4c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/Accumulator.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/Accumulator.kt @@ -128,7 +128,7 @@ internal fun checkIsBooleanType(funcName: String, value: PartiQLValue) { } @OptIn(PartiQLValueExperimental::class) -internal fun PartiQLValue.isUnknown(): Boolean = this.type == PartiQLValueType.ANY || this.isNull +internal fun PartiQLValue.isUnknown(): Boolean = this.type == PartiQLValueType.MISSING || this.isNull @OptIn(PartiQLValueExperimental::class) internal fun PartiQLValue.numberValue(): Number = when (this) { From 409cbdac3fe82e1e60c1a38223a3e604b8ae5d67 Mon Sep 17 00:00:00 2001 From: "R. C. Howell" Date: Wed, 31 Jul 2024 08:41:06 -0700 Subject: [PATCH 7/7] Simplify SPI functions in preparation for switch --- .../org/partiql/eval/internal/Compiler.kt | 2 +- .../org/partiql/eval/internal/Symbols.kt | 6 +- .../eval/internal/operator/Operator.kt | 2 +- .../internal/operator/rel/RelAggregate.kt | 2 +- .../internal/operator/rex/ExprCallDynamic.kt | 2 +- .../internal/operator/rex/ExprCallStatic.kt | 2 +- .../operator/rex/ExprCallDynamicTest.kt | 6 +- partiql-planner/api/partiql-planner.api | 84 ------------------ .../org/partiql/planner/internal/Env.kt | 4 +- .../partiql/planner/internal/FnComparator.kt | 4 +- .../org/partiql/planner/internal/FnMatch.kt | 2 +- .../partiql/planner/internal/FnResolver.kt | 2 +- .../org/partiql/planner/internal/ir/Nodes.kt | 4 +- .../main/resources/partiql_plan_internal.ion | 4 +- .../planner/internal/typer/FnResolverTest.kt | 4 +- partiql-spi/api/partiql-spi.api | 86 +++++++++++++++++++ .../main/kotlin/org/partiql/spi}/fn/Agg.kt | 2 +- .../org/partiql/spi}/fn/AggSignature.kt | 2 +- .../src/main/kotlin/org/partiql/spi}/fn/Fn.kt | 2 +- .../kotlin/org/partiql/spi}/fn/FnParameter.kt | 2 +- .../kotlin/org/partiql/spi}/fn/FnSignature.kt | 2 +- .../kotlin/org/partiql/spi}/fn/SqlBuiltins.kt | 4 +- .../org/partiql/spi}/fn/SqlFnProvider.kt | 6 +- .../org/partiql/spi}/fn/builtins/AggAny.kt | 10 +-- .../org/partiql/spi}/fn/builtins/AggAvg.kt | 10 +-- .../org/partiql/spi}/fn/builtins/AggCount.kt | 10 +-- .../org/partiql/spi}/fn/builtins/AggEvery.kt | 10 +-- .../partiql/spi}/fn/builtins/AggGroupAs.kt | 10 +-- .../org/partiql/spi}/fn/builtins/AggMax.kt | 10 +-- .../org/partiql/spi}/fn/builtins/AggMin.kt | 10 +-- .../org/partiql/spi}/fn/builtins/AggSome.kt | 10 +-- .../org/partiql/spi}/fn/builtins/AggSum.kt | 10 +-- .../org/partiql/spi}/fn/builtins/FnAbs.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnAnd.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnBetween.kt | 8 +- .../partiql/spi}/fn/builtins/FnBitLength.kt | 8 +- .../partiql/spi}/fn/builtins/FnBitwiseAnd.kt | 8 +- .../partiql/spi}/fn/builtins/FnCardinality.kt | 8 +- .../partiql/spi}/fn/builtins/FnCharLength.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnCollAgg.kt | 26 +++--- .../org/partiql/spi}/fn/builtins/FnConcat.kt | 8 +- .../partiql/spi}/fn/builtins/FnCurrentDate.kt | 6 +- .../partiql/spi}/fn/builtins/FnCurrentUser.kt | 6 +- .../partiql/spi}/fn/builtins/FnDateAddDay.kt | 8 +- .../partiql/spi}/fn/builtins/FnDateAddHour.kt | 8 +- .../spi}/fn/builtins/FnDateAddMinute.kt | 8 +- .../spi}/fn/builtins/FnDateAddMonth.kt | 8 +- .../spi}/fn/builtins/FnDateAddSecond.kt | 8 +- .../partiql/spi}/fn/builtins/FnDateAddYear.kt | 8 +- .../partiql/spi}/fn/builtins/FnDateDiffDay.kt | 8 +- .../spi}/fn/builtins/FnDateDiffHour.kt | 8 +- .../spi}/fn/builtins/FnDateDiffMinute.kt | 8 +- .../spi}/fn/builtins/FnDateDiffMonth.kt | 8 +- .../spi}/fn/builtins/FnDateDiffSecond.kt | 8 +- .../spi}/fn/builtins/FnDateDiffYear.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnDivide.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnEq.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnExists.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnExtract.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnGt.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnGte.kt | 8 +- .../spi}/fn/builtins/FnInCollection.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsAny.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsBag.kt | 8 +- .../partiql/spi}/fn/builtins/FnIsBinary.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsBlob.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsBool.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsByte.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsChar.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsClob.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsDate.kt | 8 +- .../partiql/spi}/fn/builtins/FnIsDecimal.kt | 8 +- .../spi}/fn/builtins/FnIsDecimalArbitrary.kt | 8 +- .../partiql/spi}/fn/builtins/FnIsFloat32.kt | 8 +- .../partiql/spi}/fn/builtins/FnIsFloat64.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsInt.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsInt16.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsInt32.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsInt64.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsInt8.kt | 8 +- .../partiql/spi}/fn/builtins/FnIsInterval.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsList.kt | 8 +- .../partiql/spi}/fn/builtins/FnIsMissing.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsNull.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsSexp.kt | 8 +- .../partiql/spi}/fn/builtins/FnIsString.kt | 8 +- .../partiql/spi}/fn/builtins/FnIsStruct.kt | 8 +- .../partiql/spi}/fn/builtins/FnIsSymbol.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnIsTime.kt | 8 +- .../partiql/spi}/fn/builtins/FnIsTimestamp.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnLike.kt | 12 +-- .../partiql/spi}/fn/builtins/FnLikeEscape.kt | 14 +-- .../org/partiql/spi}/fn/builtins/FnLower.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnLt.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnLte.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnMinus.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnModulo.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnNeg.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnNot.kt | 8 +- .../partiql/spi}/fn/builtins/FnOctetLength.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnOr.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnPlus.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnPos.kt | 8 +- .../partiql/spi}/fn/builtins/FnPosition.kt | 10 +-- .../org/partiql/spi}/fn/builtins/FnSize.kt | 8 +- .../partiql/spi}/fn/builtins/FnSubstring.kt | 10 +-- .../org/partiql/spi}/fn/builtins/FnTimes.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnTrim.kt | 10 +-- .../partiql/spi}/fn/builtins/FnTrimChars.kt | 10 +-- .../partiql/spi}/fn/builtins/FnTrimLeading.kt | 10 +-- .../spi}/fn/builtins/FnTrimLeadingChars.kt | 10 +-- .../spi}/fn/builtins/FnTrimTrailing.kt | 10 +-- .../spi}/fn/builtins/FnTrimTrailingChars.kt | 10 +-- .../org/partiql/spi}/fn/builtins/FnUpper.kt | 8 +- .../org/partiql/spi}/fn/builtins/FnUtcnow.kt | 6 +- .../spi}/fn/builtins/internal/Accumulator.kt | 4 +- .../builtins/internal/AccumulatorAnySome.kt | 2 +- .../fn/builtins/internal/AccumulatorAvg.kt | 2 +- .../fn/builtins/internal/AccumulatorCount.kt | 2 +- .../builtins/internal/AccumulatorCountStar.kt | 4 +- .../fn/builtins/internal/AccumulatorEvery.kt | 2 +- .../builtins/internal/AccumulatorGroupAs.kt | 2 +- .../fn/builtins/internal/AccumulatorMax.kt | 2 +- .../fn/builtins/internal/AccumulatorMin.kt | 2 +- .../fn/builtins/internal/AccumulatorSum.kt | 2 +- .../org/partiql/spi}/fn/utils/PatternUtils.kt | 4 +- .../org/partiql/spi}/fn/utils/StringUtils.kt | 2 +- 127 files changed, 530 insertions(+), 528 deletions(-) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/Agg.kt (95%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/AggSignature.kt (98%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/Fn.kt (92%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/FnParameter.kt (93%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/FnSignature.kt (99%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/SqlBuiltins.kt (99%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/SqlFnProvider.kt (87%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/AggAny.kt (78%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/AggAvg.kt (94%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/AggCount.kt (69%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/AggEvery.kt (79%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/AggGroupAs.kt (68%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/AggMax.kt (94%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/AggMin.kt (94%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/AggSome.kt (78%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/AggSum.kt (94%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnAbs.kt (96%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnAnd.kt (86%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnBetween.kt (98%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnBitLength.kt (91%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnBitwiseAnd.kt (95%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnCardinality.kt (92%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnCharLength.kt (91%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnCollAgg.kt (75%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnConcat.kt (92%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnCurrentDate.kt (80%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnCurrentUser.kt (81%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnDateAddDay.kt (96%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnDateAddHour.kt (96%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnDateAddMinute.kt (96%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnDateAddMonth.kt (96%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnDateAddSecond.kt (96%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnDateAddYear.kt (96%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnDateDiffDay.kt (87%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnDateDiffHour.kt (87%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnDateDiffMinute.kt (87%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnDateDiffMonth.kt (87%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnDateDiffSecond.kt (87%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnDateDiffYear.kt (87%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnDivide.kt (96%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnEq.kt (90%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnExists.kt (93%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnExtract.kt (98%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnGt.kt (98%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnGte.kt (98%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnInCollection.kt (99%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsAny.kt (77%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsBag.kt (78%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsBinary.kt (79%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsBlob.kt (79%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsBool.kt (79%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsByte.kt (79%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsChar.kt (89%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsClob.kt (79%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsDate.kt (79%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsDecimal.kt (93%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsDecimalArbitrary.kt (79%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsFloat32.kt (84%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsFloat64.kt (82%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsInt.kt (84%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsInt16.kt (89%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsInt32.kt (88%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsInt64.kt (87%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsInt8.kt (89%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsInterval.kt (79%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsList.kt (79%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsMissing.kt (80%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsNull.kt (82%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsSexp.kt (79%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsString.kt (89%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsStruct.kt (79%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsSymbol.kt (79%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsTime.kt (87%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnIsTimestamp.kt (87%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnLike.kt (90%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnLikeEscape.kt (91%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnLower.kt (90%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnLt.kt (98%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnLte.kt (98%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnMinus.kt (96%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnModulo.kt (96%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnNeg.kt (96%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnNot.kt (80%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnOctetLength.kt (91%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnOr.kt (84%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnPlus.kt (96%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnPos.kt (95%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnPosition.kt (90%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnSize.kt (92%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnSubstring.kt (96%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnTimes.kt (96%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnTrim.kt (92%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnTrimChars.kt (90%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnTrimLeading.kt (88%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnTrimLeadingChars.kt (90%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnTrimTrailing.kt (88%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnTrimTrailingChars.kt (90%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnUpper.kt (91%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/FnUtcnow.kt (83%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/internal/Accumulator.kt (98%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/internal/AccumulatorAnySome.kt (90%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/internal/AccumulatorAvg.kt (92%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/internal/AccumulatorCount.kt (86%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/internal/AccumulatorCountStar.kt (79%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/internal/AccumulatorEvery.kt (91%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/internal/AccumulatorGroupAs.kt (87%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/internal/AccumulatorMax.kt (88%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/internal/AccumulatorMin.kt (88%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/builtins/internal/AccumulatorSum.kt (92%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/utils/PatternUtils.kt (98%) rename {partiql-planner/src/main/kotlin/org/partiql/planner/internal => partiql-spi/src/main/kotlin/org/partiql/spi}/fn/utils/StringUtils.kt (99%) diff --git a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Compiler.kt b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Compiler.kt index 34bb74a0c7..d5cd75689c 100644 --- a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Compiler.kt +++ b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Compiler.kt @@ -56,7 +56,7 @@ import org.partiql.plan.Rex import org.partiql.plan.Statement import org.partiql.plan.debug.PlanPrinter import org.partiql.plan.visitor.PlanBaseVisitor -import org.partiql.planner.internal.fn.Agg +import org.partiql.spi.fn.Agg import org.partiql.types.PType import org.partiql.value.PartiQLValueExperimental import java.lang.IllegalStateException diff --git a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Symbols.kt b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Symbols.kt index d45b13d726..8175e74064 100644 --- a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Symbols.kt +++ b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/Symbols.kt @@ -6,11 +6,11 @@ import org.partiql.eval.internal.operator.rex.ExprVarGlobal import org.partiql.plan.Catalog import org.partiql.plan.PartiQLPlan import org.partiql.plan.Ref -import org.partiql.planner.internal.fn.Agg -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.SqlFnProvider import org.partiql.spi.connector.ConnectorBindings import org.partiql.spi.connector.ConnectorPath +import org.partiql.spi.fn.Agg +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.SqlFnProvider /** * diff --git a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/Operator.kt b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/Operator.kt index 0590dcea1b..e4abd8f40e 100644 --- a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/Operator.kt +++ b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/Operator.kt @@ -3,7 +3,7 @@ package org.partiql.eval.internal.operator import org.partiql.eval.internal.Environment import org.partiql.eval.internal.Record import org.partiql.eval.value.Datum -import org.partiql.planner.internal.fn.Agg +import org.partiql.spi.fn.Agg internal sealed interface Operator { diff --git a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rel/RelAggregate.kt b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rel/RelAggregate.kt index cf1cd99c57..1a230f5fb9 100644 --- a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rel/RelAggregate.kt +++ b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rel/RelAggregate.kt @@ -4,7 +4,7 @@ import org.partiql.eval.internal.Environment import org.partiql.eval.internal.Record import org.partiql.eval.internal.operator.Operator import org.partiql.eval.value.Datum -import org.partiql.planner.internal.fn.Agg +import org.partiql.spi.fn.Agg import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType diff --git a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamic.kt b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamic.kt index 53f0f185fd..217055afa0 100644 --- a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamic.kt +++ b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamic.kt @@ -5,7 +5,7 @@ import org.partiql.eval.internal.Environment import org.partiql.eval.internal.operator.Operator import org.partiql.eval.value.Datum import org.partiql.plan.Ref -import org.partiql.planner.internal.fn.Fn +import org.partiql.spi.fn.Fn import org.partiql.types.PType import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallStatic.kt b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallStatic.kt index c4cc765910..ed7c4076f4 100644 --- a/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallStatic.kt +++ b/partiql-eval/src/main/kotlin/org/partiql/eval/internal/operator/rex/ExprCallStatic.kt @@ -3,7 +3,7 @@ package org.partiql.eval.internal.operator.rex import org.partiql.eval.internal.Environment import org.partiql.eval.internal.operator.Operator import org.partiql.eval.value.Datum -import org.partiql.planner.internal.fn.Fn +import org.partiql.spi.fn.Fn import org.partiql.value.PartiQLValueExperimental @OptIn(PartiQLValueExperimental::class) diff --git a/partiql-eval/src/test/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamicTest.kt b/partiql-eval/src/test/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamicTest.kt index 80e7836e9b..6b764d85bf 100644 --- a/partiql-eval/src/test/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamicTest.kt +++ b/partiql-eval/src/test/kotlin/org/partiql/eval/internal/operator/rex/ExprCallDynamicTest.kt @@ -13,9 +13,9 @@ import org.partiql.eval.value.Datum.boolValue import org.partiql.eval.value.Datum.int32Value import org.partiql.eval.value.Datum.listValue import org.partiql.eval.value.Datum.stringValue -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType diff --git a/partiql-planner/api/partiql-planner.api b/partiql-planner/api/partiql-planner.api index 0b46df75de..461c06d269 100644 --- a/partiql-planner/api/partiql-planner.api +++ b/partiql-planner/api/partiql-planner.api @@ -321,87 +321,3 @@ public final class org/partiql/planner/catalog/Table$Handle { public fun (Lorg/partiql/planner/catalog/Name;Lorg/partiql/planner/catalog/Table;)V } -public abstract interface class org/partiql/planner/internal/fn/Agg { - public abstract fun accumulator ()Lorg/partiql/planner/internal/fn/Agg$Accumulator; - public abstract fun getSignature ()Lorg/partiql/planner/internal/fn/AggSignature; -} - -public abstract interface class org/partiql/planner/internal/fn/Agg$Accumulator { - public abstract fun next ([Lorg/partiql/value/PartiQLValue;)V - public abstract fun value ()Lorg/partiql/value/PartiQLValue; -} - -public final class org/partiql/planner/internal/fn/AggSignature { - public final field description Ljava/lang/String; - public final field isDecomposable Z - public final field isNullable Z - public final field name Ljava/lang/String; - public final field parameters Ljava/util/List; - public final field returns Lorg/partiql/types/PType; - public fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZ)V - public synthetic fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZILkotlin/jvm/internal/DefaultConstructorMarker;)V - public fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZ)V - public synthetic fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZILkotlin/jvm/internal/DefaultConstructorMarker;)V - public fun equals (Ljava/lang/Object;)Z - public final fun getSpecific ()Ljava/lang/String; - public fun hashCode ()I - public fun toString ()Ljava/lang/String; -} - -public abstract interface class org/partiql/planner/internal/fn/Fn { - public abstract fun getSignature ()Lorg/partiql/planner/internal/fn/FnSignature; - public abstract fun invoke ([Lorg/partiql/value/PartiQLValue;)Lorg/partiql/value/PartiQLValue; -} - -public final class org/partiql/planner/internal/fn/FnParameter { - public fun (Ljava/lang/String;Lorg/partiql/types/PType;)V - public fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;)V - public final fun component1 ()Ljava/lang/String; - public final fun component2 ()Lorg/partiql/types/PType; - public final fun copy (Ljava/lang/String;Lorg/partiql/types/PType;)Lorg/partiql/planner/internal/fn/FnParameter; - public static synthetic fun copy$default (Lorg/partiql/planner/internal/fn/FnParameter;Ljava/lang/String;Lorg/partiql/types/PType;ILjava/lang/Object;)Lorg/partiql/planner/internal/fn/FnParameter; - public fun equals (Ljava/lang/Object;)Z - public final fun getName ()Ljava/lang/String; - public final fun getType ()Lorg/partiql/types/PType; - public fun hashCode ()I - public fun toString ()Ljava/lang/String; -} - -public final class org/partiql/planner/internal/fn/FnSignature { - public final field description Ljava/lang/String; - public final field isDeterministic Z - public final field isMissable Z - public final field isMissingCall Z - public final field isNullCall Z - public final field isNullable Z - public final field name Ljava/lang/String; - public final field parameters Ljava/util/List; - public final field returns Lorg/partiql/types/PType; - public fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZ)V - public synthetic fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZILkotlin/jvm/internal/DefaultConstructorMarker;)V - public fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZZZZ)V - public synthetic fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZZZZILkotlin/jvm/internal/DefaultConstructorMarker;)V - public final fun component1 ()Ljava/lang/String; - public final fun component2 ()Lorg/partiql/types/PType; - public final fun component3 ()Ljava/util/List; - public final fun component4 ()Ljava/lang/String; - public final fun component5 ()Z - public final fun component6 ()Z - public final fun component7 ()Z - public final fun component8 ()Z - public final fun component9 ()Z - public final fun copy (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZ)Lorg/partiql/planner/internal/fn/FnSignature; - public static synthetic fun copy$default (Lorg/partiql/planner/internal/fn/FnSignature;Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZILjava/lang/Object;)Lorg/partiql/planner/internal/fn/FnSignature; - public fun equals (Ljava/lang/Object;)Z - public final fun getSpecific ()Ljava/lang/String; - public fun hashCode ()I - public final fun sql ()Ljava/lang/String; - public fun toString ()Ljava/lang/String; -} - -public final class org/partiql/planner/internal/fn/SqlFnProvider { - public static final field INSTANCE Lorg/partiql/planner/internal/fn/SqlFnProvider; - public final fun getAgg (Ljava/lang/String;)Lorg/partiql/planner/internal/fn/Agg; - public final fun getFn (Ljava/lang/String;)Lorg/partiql/planner/internal/fn/Fn; -} - diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt index 48a9597010..c9e98aae7f 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/Env.kt @@ -4,8 +4,6 @@ import org.partiql.planner.catalog.Name import org.partiql.planner.catalog.Session import org.partiql.planner.internal.casts.CastTable import org.partiql.planner.internal.casts.Coercions -import org.partiql.planner.internal.fn.AggSignature -import org.partiql.planner.internal.fn.SqlFnProvider import org.partiql.planner.internal.ir.Ref import org.partiql.planner.internal.ir.Rel import org.partiql.planner.internal.ir.Rex @@ -22,6 +20,8 @@ import org.partiql.planner.internal.typer.CompilerType import org.partiql.planner.internal.typer.Scope.Companion.toPath import org.partiql.spi.BindingPath import org.partiql.spi.connector.ConnectorMetadata +import org.partiql.spi.fn.AggSignature +import org.partiql.spi.fn.SqlFnProvider import org.partiql.types.PType import org.partiql.types.PType.Kind diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnComparator.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnComparator.kt index 5996c59621..23a08fb977 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnComparator.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnComparator.kt @@ -1,7 +1,7 @@ package org.partiql.planner.internal -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.types.PType import org.partiql.types.PType.Kind diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnMatch.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnMatch.kt index cf6d1336e3..7107b6eb63 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnMatch.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnMatch.kt @@ -1,7 +1,7 @@ package org.partiql.planner.internal -import org.partiql.planner.internal.fn.FnSignature import org.partiql.planner.internal.ir.Ref +import org.partiql.spi.fn.FnSignature /** * Result of matching an unresolved function. diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnResolver.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnResolver.kt index a7c6c2f9bd..f24a289f3f 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnResolver.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/FnResolver.kt @@ -1,10 +1,10 @@ package org.partiql.planner.internal import org.partiql.planner.internal.casts.Coercions -import org.partiql.planner.internal.fn.FnSignature import org.partiql.planner.internal.ir.Ref import org.partiql.planner.internal.typer.CompilerType import org.partiql.planner.internal.typer.PlanTyper.Companion.toCType +import org.partiql.spi.fn.FnSignature import org.partiql.types.PType.Kind /** diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/ir/Nodes.kt b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/ir/Nodes.kt index a806dc1ac0..7c502cd050 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/ir/Nodes.kt +++ b/partiql-planner/src/main/kotlin/org/partiql/planner/internal/ir/Nodes.kt @@ -5,8 +5,8 @@ package org.partiql.planner.`internal`.ir import org.partiql.errors.Problem import org.partiql.planner.catalog.Identifier import org.partiql.planner.catalog.Name -import org.partiql.planner.internal.fn.AggSignature -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.AggSignature +import org.partiql.spi.fn.FnSignature import org.partiql.planner.internal.ir.builder.PartiQlPlanBuilder import org.partiql.planner.internal.ir.builder.RefAggBuilder import org.partiql.planner.internal.ir.builder.RefCastBuilder diff --git a/partiql-planner/src/main/resources/partiql_plan_internal.ion b/partiql-planner/src/main/resources/partiql_plan_internal.ion index 234e855d29..e4bc767c83 100644 --- a/partiql-planner/src/main/resources/partiql_plan_internal.ion +++ b/partiql-planner/src/main/resources/partiql_plan_internal.ion @@ -5,8 +5,8 @@ imports::{ partiql_value::'org.partiql.value.PartiQLValue', partiql_value_type::'org.partiql.planner.internal.typer.CompilerType', static_type::'org.partiql.planner.internal.typer.CompilerType', - fn_signature::'org.partiql.planner.internal.fn.FnSignature', - agg_signature::'org.partiql.planner.internal.fn.AggSignature', + fn_signature::'org.partiql.spi.fn.FnSignature', + agg_signature::'org.partiql.spi.fn.AggSignature', problem::'org.partiql.errors.Problem' ], } diff --git a/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/FnResolverTest.kt b/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/FnResolverTest.kt index 35df0b254b..afe96b2120 100644 --- a/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/FnResolverTest.kt +++ b/partiql-planner/src/test/kotlin/org/partiql/planner/internal/typer/FnResolverTest.kt @@ -4,9 +4,9 @@ import org.junit.jupiter.api.Test import org.junit.jupiter.api.fail import org.partiql.planner.internal.FnMatch import org.partiql.planner.internal.FnResolver -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature import org.partiql.planner.internal.typer.PlanTyper.Companion.toCType +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.types.PType import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType diff --git a/partiql-spi/api/partiql-spi.api b/partiql-spi/api/partiql-spi.api index 217702a940..d496ae8f8a 100644 --- a/partiql-spi/api/partiql-spi.api +++ b/partiql-spi/api/partiql-spi.api @@ -115,3 +115,89 @@ public final class org/partiql/spi/connector/Constants { public static final field INSTANCE Lorg/partiql/spi/connector/Constants; } +public abstract interface class org/partiql/spi/fn/Agg { + public abstract fun accumulator ()Lorg/partiql/spi/fn/Agg$Accumulator; + public abstract fun getSignature ()Lorg/partiql/spi/fn/AggSignature; +} + +public abstract interface class org/partiql/spi/fn/Agg$Accumulator { + public abstract fun next ([Lorg/partiql/value/PartiQLValue;)V + public abstract fun value ()Lorg/partiql/value/PartiQLValue; +} + +public final class org/partiql/spi/fn/AggSignature { + public final field description Ljava/lang/String; + public final field isDecomposable Z + public final field isNullable Z + public final field name Ljava/lang/String; + public final field parameters Ljava/util/List; + public final field returns Lorg/partiql/types/PType; + public fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZ)V + public synthetic fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZILkotlin/jvm/internal/DefaultConstructorMarker;)V + public fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZ)V + public synthetic fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZILkotlin/jvm/internal/DefaultConstructorMarker;)V + public fun equals (Ljava/lang/Object;)Z + public final fun getSpecific ()Ljava/lang/String; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + +public abstract interface class org/partiql/spi/fn/Fn { + public abstract fun getSignature ()Lorg/partiql/spi/fn/FnSignature; + public abstract fun invoke ([Lorg/partiql/value/PartiQLValue;)Lorg/partiql/value/PartiQLValue; +} + +public final class org/partiql/spi/fn/FnParameter { + public fun (Ljava/lang/String;Lorg/partiql/types/PType;)V + public fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;)V + public final fun component1 ()Ljava/lang/String; + public final fun component2 ()Lorg/partiql/types/PType; + public final fun copy (Ljava/lang/String;Lorg/partiql/types/PType;)Lorg/partiql/spi/fn/FnParameter; + public static synthetic fun copy$default (Lorg/partiql/spi/fn/FnParameter;Ljava/lang/String;Lorg/partiql/types/PType;ILjava/lang/Object;)Lorg/partiql/spi/fn/FnParameter; + public fun equals (Ljava/lang/Object;)Z + public final fun getName ()Ljava/lang/String; + public final fun getType ()Lorg/partiql/types/PType; + public fun hashCode ()I + public fun toString ()Ljava/lang/String; +} + +public final class org/partiql/spi/fn/FnSignature { + public final field description Ljava/lang/String; + public final field isDeterministic Z + public final field isMissable Z + public final field isMissingCall Z + public final field isNullCall Z + public final field isNullable Z + public final field name Ljava/lang/String; + public final field parameters Ljava/util/List; + public final field returns Lorg/partiql/types/PType; + public fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZ)V + public synthetic fun (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZILkotlin/jvm/internal/DefaultConstructorMarker;)V + public fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZZZZ)V + public synthetic fun (Ljava/lang/String;Lorg/partiql/value/PartiQLValueType;Ljava/util/List;Ljava/lang/String;ZZZZZILkotlin/jvm/internal/DefaultConstructorMarker;)V + public final fun component1 ()Ljava/lang/String; + public final fun component2 ()Lorg/partiql/types/PType; + public final fun component3 ()Ljava/util/List; + public final fun component4 ()Ljava/lang/String; + public final fun component5 ()Z + public final fun component6 ()Z + public final fun component7 ()Z + public final fun component8 ()Z + public final fun component9 ()Z + public final fun copy (Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZ)Lorg/partiql/spi/fn/FnSignature; + public static synthetic fun copy$default (Lorg/partiql/spi/fn/FnSignature;Ljava/lang/String;Lorg/partiql/types/PType;Ljava/util/List;Ljava/lang/String;ZZZZZILjava/lang/Object;)Lorg/partiql/spi/fn/FnSignature; + public fun equals (Ljava/lang/Object;)Z + public final fun getSpecific ()Ljava/lang/String; + public fun hashCode ()I + public final fun sql ()Ljava/lang/String; + public fun toString ()Ljava/lang/String; +} + +public final class org/partiql/spi/fn/SqlFnProvider { + public static final field INSTANCE Lorg/partiql/spi/fn/SqlFnProvider; + public final fun getAgg (Ljava/lang/String;)Lorg/partiql/spi/fn/Agg; + public final fun getFn (Ljava/lang/String;)Lorg/partiql/spi/fn/Fn; + public final fun lookupAgg (Ljava/lang/String;)Ljava/util/List; + public final fun lookupFn (Ljava/lang/String;)Ljava/util/List; +} + diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Agg.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/Agg.kt similarity index 95% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Agg.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/Agg.kt index 8119a1f220..2ade2f23ae 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Agg.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/Agg.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn +package org.partiql.spi.fn import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/AggSignature.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/AggSignature.kt similarity index 98% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/AggSignature.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/AggSignature.kt index 76103cef56..ccfcbbd9ae 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/AggSignature.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/AggSignature.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn +package org.partiql.spi.fn import org.partiql.types.PType import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Fn.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/Fn.kt similarity index 92% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Fn.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/Fn.kt index 02dd3bef62..265095110a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/Fn.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/Fn.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn +package org.partiql.spi.fn import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnParameter.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnParameter.kt similarity index 93% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnParameter.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnParameter.kt index 47c44c3402..a3ba8d29ed 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnParameter.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnParameter.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn +package org.partiql.spi.fn import org.partiql.types.PType import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnSignature.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnSignature.kt similarity index 99% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnSignature.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnSignature.kt index 82e48e8058..6d0cd392fa 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/FnSignature.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/FnSignature.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn +package org.partiql.spi.fn import org.partiql.types.PType import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlBuiltins.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/SqlBuiltins.kt similarity index 99% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlBuiltins.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/SqlBuiltins.kt index a920ffc6fc..8f88966bab 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlBuiltins.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/SqlBuiltins.kt @@ -1,7 +1,7 @@ -package org.partiql.planner.internal.fn +package org.partiql.spi.fn /* ktlint-disable no-wildcard-imports */ -import org.partiql.planner.internal.fn.builtins.* +import org.partiql.spi.fn.builtins.* /** * This is where we will register all SQL builtins. For now, we wrap the generated header to keep the diff small. diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlFnProvider.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/SqlFnProvider.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlFnProvider.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/SqlFnProvider.kt index 7b52b6b6eb..d5c8b5d0eb 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/SqlFnProvider.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/SqlFnProvider.kt @@ -12,7 +12,7 @@ * language governing permissions and limitations under the License. */ -package org.partiql.planner.internal.fn +package org.partiql.spi.fn /** * TODO !! TEMPORARY AS FUNCTIONS ARE MOVED FROM CONNECTORS TO PLANNER. @@ -27,8 +27,8 @@ public object SqlFnProvider { // // INTERNAL PLANNER APIS // - internal fun lookupFn(name: String) = fnNameIndex[name] - internal fun lookupAgg(name: String) = aggNameIndex[name] + public fun lookupFn(name: String): List? = fnNameIndex[name] + public fun lookupAgg(name: String): List? = aggNameIndex[name] // // TEMPORARY PUBLIC EVALUATOR APIS diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggAny.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggAny.kt similarity index 78% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggAny.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggAny.kt index f28101941b..102051f508 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggAny.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggAny.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Agg -import org.partiql.planner.internal.fn.AggSignature -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorAnySome +import org.partiql.spi.fn.Agg +import org.partiql.spi.fn.AggSignature +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.builtins.internal.AccumulatorAnySome import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggAvg.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggAvg.kt similarity index 94% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggAvg.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggAvg.kt index 9cc1f7ea86..1db291b6c6 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggAvg.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggAvg.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Agg -import org.partiql.planner.internal.fn.AggSignature -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorAvg +import org.partiql.spi.fn.Agg +import org.partiql.spi.fn.AggSignature +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.builtins.internal.AccumulatorAvg import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.DECIMAL diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggCount.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggCount.kt similarity index 69% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggCount.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggCount.kt index 675035561f..47c95df1ea 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggCount.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggCount.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Agg -import org.partiql.planner.internal.fn.AggSignature -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorCount +import org.partiql.spi.fn.Agg +import org.partiql.spi.fn.AggSignature +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.builtins.internal.AccumulatorCount import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.INT64 diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggEvery.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggEvery.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggEvery.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggEvery.kt index 529128214b..471da16d23 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggEvery.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggEvery.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Agg -import org.partiql.planner.internal.fn.AggSignature -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorEvery +import org.partiql.spi.fn.Agg +import org.partiql.spi.fn.AggSignature +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.builtins.internal.AccumulatorEvery import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggGroupAs.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggGroupAs.kt similarity index 68% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggGroupAs.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggGroupAs.kt index acacf90491..b9f75f428b 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggGroupAs.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggGroupAs.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Agg -import org.partiql.planner.internal.fn.AggSignature -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorGroupAs +import org.partiql.spi.fn.Agg +import org.partiql.spi.fn.AggSignature +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.builtins.internal.AccumulatorGroupAs import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggMax.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggMax.kt similarity index 94% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggMax.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggMax.kt index b2148ba40a..3d478da217 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggMax.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggMax.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Agg -import org.partiql.planner.internal.fn.AggSignature -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorMax +import org.partiql.spi.fn.Agg +import org.partiql.spi.fn.AggSignature +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.builtins.internal.AccumulatorMax import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.DECIMAL_ARBITRARY diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggMin.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggMin.kt similarity index 94% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggMin.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggMin.kt index dfa2af13f1..1ece12be7c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggMin.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggMin.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Agg -import org.partiql.planner.internal.fn.AggSignature -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorMin +import org.partiql.spi.fn.Agg +import org.partiql.spi.fn.AggSignature +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.builtins.internal.AccumulatorMin import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.DECIMAL_ARBITRARY diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggSome.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggSome.kt similarity index 78% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggSome.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggSome.kt index 3a4eb6e67a..acb6571dc4 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggSome.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggSome.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Agg -import org.partiql.planner.internal.fn.AggSignature -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorAnySome +import org.partiql.spi.fn.Agg +import org.partiql.spi.fn.AggSignature +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.builtins.internal.AccumulatorAnySome import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.BOOL diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggSum.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggSum.kt similarity index 94% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggSum.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggSum.kt index e34003157b..c9a35d8a6f 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/AggSum.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/AggSum.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Agg -import org.partiql.planner.internal.fn.AggSignature -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorSum +import org.partiql.spi.fn.Agg +import org.partiql.spi.fn.AggSignature +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.builtins.internal.AccumulatorSum import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY import org.partiql.value.PartiQLValueType.DECIMAL_ARBITRARY diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAbs.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnAbs.kt similarity index 96% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAbs.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnAbs.kt index b862459804..3dd184a734 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAbs.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnAbs.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Float32Value import org.partiql.value.Float64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAnd.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnAnd.kt similarity index 86% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAnd.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnAnd.kt index 4aca28cdeb..7e6a1969cc 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnAnd.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnAnd.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBetween.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnBetween.kt similarity index 98% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBetween.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnBetween.kt index 2dc81fefd8..c65f096ebc 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBetween.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnBetween.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.ClobValue import org.partiql.value.DateValue import org.partiql.value.DecimalValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitLength.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnBitLength.kt similarity index 91% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitLength.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnBitLength.kt index 9be33e5e06..ab956c9aaa 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitLength.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnBitLength.kt @@ -1,8 +1,8 @@ -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.ClobValue import org.partiql.value.Int32Value import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitwiseAnd.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnBitwiseAnd.kt similarity index 95% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitwiseAnd.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnBitwiseAnd.kt index 0864060e3c..2b0555bd61 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnBitwiseAnd.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnBitwiseAnd.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.Int16Value import org.partiql.value.Int32Value import org.partiql.value.Int64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCardinality.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnCardinality.kt similarity index 92% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCardinality.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnCardinality.kt index 1abe347040..e77581a75a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCardinality.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnCardinality.kt @@ -1,8 +1,8 @@ -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.BagValue import org.partiql.value.ListValue import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCharLength.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnCharLength.kt similarity index 91% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCharLength.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnCharLength.kt index 1d93cbbcb5..0e9b8594c2 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCharLength.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnCharLength.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.ClobValue import org.partiql.value.Int32Value import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCollAgg.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnCollAgg.kt similarity index 75% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCollAgg.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnCollAgg.kt index 194cb6a0f5..a5930241ce 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCollAgg.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnCollAgg.kt @@ -1,20 +1,20 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Agg -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature -import org.partiql.planner.internal.fn.builtins.internal.Accumulator -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorAnySome -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorAvg -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorCount -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorEvery -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorMax -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorMin -import org.partiql.planner.internal.fn.builtins.internal.AccumulatorSum +import org.partiql.spi.fn.Agg +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature +import org.partiql.spi.fn.builtins.internal.Accumulator +import org.partiql.spi.fn.builtins.internal.AccumulatorAnySome +import org.partiql.spi.fn.builtins.internal.AccumulatorAvg +import org.partiql.spi.fn.builtins.internal.AccumulatorCount +import org.partiql.spi.fn.builtins.internal.AccumulatorEvery +import org.partiql.spi.fn.builtins.internal.AccumulatorMax +import org.partiql.spi.fn.builtins.internal.AccumulatorMin +import org.partiql.spi.fn.builtins.internal.AccumulatorSum import org.partiql.value.BagValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnConcat.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnConcat.kt similarity index 92% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnConcat.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnConcat.kt index f3a6105880..1689b269a4 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnConcat.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnConcat.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentDate.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnCurrentDate.kt similarity index 80% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentDate.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnCurrentDate.kt index fc16aff0ea..a34e229d56 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentDate.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnCurrentDate.kt @@ -1,10 +1,10 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.DATE diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentUser.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnCurrentUser.kt similarity index 81% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentUser.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnCurrentUser.kt index 734cb11d3a..ff3514087b 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnCurrentUser.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnCurrentUser.kt @@ -1,10 +1,10 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.STRING diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddDay.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddDay.kt similarity index 96% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddDay.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddDay.kt index 04d88cfd71..e57231aada 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddDay.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddDay.kt @@ -1,13 +1,13 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.DateValue import org.partiql.value.Int32Value import org.partiql.value.Int64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddHour.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddHour.kt similarity index 96% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddHour.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddHour.kt index 220f25e3ec..049e72aa61 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddHour.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddHour.kt @@ -1,13 +1,13 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.Int32Value import org.partiql.value.Int64Value import org.partiql.value.IntValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMinute.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddMinute.kt similarity index 96% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMinute.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddMinute.kt index ce6e54d0ba..41d42b72e0 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMinute.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddMinute.kt @@ -1,13 +1,13 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.Int32Value import org.partiql.value.Int64Value import org.partiql.value.IntValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMonth.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddMonth.kt similarity index 96% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMonth.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddMonth.kt index fd4777926c..bed8f18025 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddMonth.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddMonth.kt @@ -1,13 +1,13 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.DateValue import org.partiql.value.Int32Value import org.partiql.value.Int64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddSecond.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddSecond.kt similarity index 96% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddSecond.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddSecond.kt index e721000456..59e778e57e 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddSecond.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddSecond.kt @@ -1,13 +1,13 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.Int32Value import org.partiql.value.Int64Value import org.partiql.value.IntValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddYear.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddYear.kt similarity index 96% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddYear.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddYear.kt index 65fd3b0c7c..e9087c7d72 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateAddYear.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateAddYear.kt @@ -1,13 +1,13 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.DateValue import org.partiql.value.Int32Value import org.partiql.value.Int64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffDay.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffDay.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffDay.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffDay.kt index a5bb15078a..9b52c26431 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffDay.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffDay.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.DATE diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffHour.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffHour.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffHour.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffHour.kt index b0d495a3c2..7c59386f50 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffHour.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffHour.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.INT64 diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMinute.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffMinute.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMinute.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffMinute.kt index 05af59afbd..45ba18b4f0 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMinute.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffMinute.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.INT64 diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMonth.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffMonth.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMonth.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffMonth.kt index 35abc47e18..0743ac109e 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffMonth.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffMonth.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.DATE diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffSecond.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffSecond.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffSecond.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffSecond.kt index 5427480436..855ee5d908 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffSecond.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffSecond.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.INT64 diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffYear.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffYear.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffYear.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffYear.kt index e6490ac965..866ee2d492 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDateDiffYear.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDateDiffYear.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.DATE diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDivide.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDivide.kt similarity index 96% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDivide.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDivide.kt index e1dc7ab362..f2a8161611 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnDivide.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnDivide.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Float32Value import org.partiql.value.Float64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnEq.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnEq.kt similarity index 90% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnEq.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnEq.kt index f0dd12648f..c339b36d49 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnEq.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnEq.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExists.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnExists.kt similarity index 93% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExists.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnExists.kt index ba4b75ff68..e59fde2b78 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExists.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnExists.kt @@ -1,8 +1,8 @@ -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.BagValue import org.partiql.value.ListValue import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExtract.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnExtract.kt similarity index 98% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExtract.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnExtract.kt index 6a50b82c64..def109ed79 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnExtract.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnExtract.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.DateValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGt.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnGt.kt similarity index 98% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGt.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnGt.kt index 396ac73579..7f464176a0 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGt.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnGt.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.DateValue import org.partiql.value.DecimalValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGte.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnGte.kt similarity index 98% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGte.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnGte.kt index a61a85023b..376e94e0eb 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnGte.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnGte.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.DateValue import org.partiql.value.DecimalValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnInCollection.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnInCollection.kt similarity index 99% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnInCollection.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnInCollection.kt index d750b45336..c179f2bff5 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnInCollection.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnInCollection.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.BagValue import org.partiql.value.BinaryValue import org.partiql.value.BlobValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsAny.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsAny.kt similarity index 77% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsAny.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsAny.kt index 18544137c5..15be81a955 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsAny.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsAny.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBag.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsBag.kt similarity index 78% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBag.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsBag.kt index 9ee2ae399e..e97c2d74dc 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBag.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsBag.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.BagValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBinary.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsBinary.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBinary.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsBinary.kt index ed9d0f81d7..a99bf1f2cf 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBinary.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsBinary.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.BinaryValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBlob.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsBlob.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBlob.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsBlob.kt index ca46f50317..2c23dcd65c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBlob.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsBlob.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.BlobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBool.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsBool.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBool.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsBool.kt index b8cab9f458..20e4afeb5b 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsBool.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsBool.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsByte.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsByte.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsByte.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsByte.kt index 19f435a4fb..921b78b9e9 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsByte.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsByte.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.ByteValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsChar.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsChar.kt similarity index 89% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsChar.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsChar.kt index a6cf30831c..45bf98a570 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsChar.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsChar.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins import org.partiql.errors.TypeCheckException -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.CharValue import org.partiql.value.Int32Value import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsClob.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsClob.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsClob.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsClob.kt index 6ea8a90bf8..68c9d5291a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsClob.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsClob.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDate.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsDate.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDate.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsDate.kt index f19a929ae5..de08a97fdc 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDate.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsDate.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.DateValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimal.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsDecimal.kt similarity index 93% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimal.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsDecimal.kt index 8a7db8569d..4ef0008ec1 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimal.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsDecimal.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Int32Value import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimalArbitrary.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsDecimalArbitrary.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimalArbitrary.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsDecimalArbitrary.kt index 818c428d45..73455102e2 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsDecimalArbitrary.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsDecimalArbitrary.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat32.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsFloat32.kt similarity index 84% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat32.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsFloat32.kt index 38b838bab8..69f17ebc3d 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat32.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsFloat32.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.Float32Value import org.partiql.value.Float64Value import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat64.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsFloat64.kt similarity index 82% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat64.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsFloat64.kt index e7d5bfcd89..a0226961bb 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsFloat64.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsFloat64.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.Float32Value import org.partiql.value.Float64Value import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInt.kt similarity index 84% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInt.kt index c5482f9db3..ed34ffd649 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInt.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.Int16Value import org.partiql.value.Int32Value import org.partiql.value.Int64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt16.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInt16.kt similarity index 89% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt16.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInt16.kt index 7ade6512e0..796cb03b16 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt16.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInt16.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.Int16Value import org.partiql.value.Int32Value import org.partiql.value.Int64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt32.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInt32.kt similarity index 88% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt32.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInt32.kt index dd8259847e..82220a6164 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt32.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInt32.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.Int16Value import org.partiql.value.Int32Value import org.partiql.value.Int64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt64.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInt64.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt64.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInt64.kt index 5f035f3392..5d00e38881 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt64.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInt64.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.Int16Value import org.partiql.value.Int32Value import org.partiql.value.Int64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt8.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInt8.kt similarity index 89% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt8.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInt8.kt index 09ac7f4d8f..4e78e001d0 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInt8.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInt8.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.Int16Value import org.partiql.value.Int32Value import org.partiql.value.Int64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInterval.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInterval.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInterval.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInterval.kt index d6953454f0..1951e16c85 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsInterval.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsInterval.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.IntervalValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsList.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsList.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsList.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsList.kt index d21c8b1f13..8dda6985c8 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsList.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsList.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.ListValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsMissing.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsMissing.kt similarity index 80% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsMissing.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsMissing.kt index 61aa437f94..2eb127811e 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsMissing.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsMissing.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.MissingValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsNull.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsNull.kt similarity index 82% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsNull.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsNull.kt index 0376567de3..a2469405dd 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsNull.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsNull.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSexp.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsSexp.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSexp.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsSexp.kt index fc8c74f4bd..fb73459635 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSexp.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsSexp.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsString.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsString.kt similarity index 89% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsString.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsString.kt index b87f22ed8e..5dc76bdb36 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsString.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsString.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins import org.partiql.errors.TypeCheckException -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.Int32Value import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsStruct.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsStruct.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsStruct.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsStruct.kt index 5d05914740..f82b82f131 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsStruct.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsStruct.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSymbol.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsSymbol.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSymbol.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsSymbol.kt index f6304dbaf7..ea506a8d3a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsSymbol.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsSymbol.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTime.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsTime.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTime.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsTime.kt index 7f7283347f..a1787ef20c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTime.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsTime.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTimestamp.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsTimestamp.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTimestamp.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsTimestamp.kt index 49ffbc5f1c..fc9711808d 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnIsTimestamp.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnIsTimestamp.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.ANY diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLike.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnLike.kt similarity index 90% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLike.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnLike.kt index c5bf79f73f..f25dbcfaaf 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLike.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnLike.kt @@ -1,13 +1,13 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature -import org.partiql.planner.internal.fn.utils.PatternUtils.matchRegexPattern -import org.partiql.planner.internal.fn.utils.PatternUtils.parsePattern +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature +import org.partiql.spi.fn.utils.PatternUtils.matchRegexPattern +import org.partiql.spi.fn.utils.PatternUtils.parsePattern import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLikeEscape.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnLikeEscape.kt similarity index 91% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLikeEscape.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnLikeEscape.kt index 3733d50b5b..da0fd57b63 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLikeEscape.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnLikeEscape.kt @@ -1,15 +1,15 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins import org.partiql.errors.TypeCheckException -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature -import org.partiql.planner.internal.fn.utils.PatternUtils -import org.partiql.planner.internal.fn.utils.PatternUtils.checkPattern -import org.partiql.planner.internal.fn.utils.PatternUtils.parsePattern +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature +import org.partiql.spi.fn.utils.PatternUtils +import org.partiql.spi.fn.utils.PatternUtils.checkPattern +import org.partiql.spi.fn.utils.PatternUtils.parsePattern import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLower.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnLower.kt similarity index 90% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLower.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnLower.kt index 3686befa52..e8f7c82d7a 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLower.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnLower.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.CLOB diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLt.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnLt.kt similarity index 98% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLt.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnLt.kt index d2337a8784..70a831f360 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLt.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnLt.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.DateValue import org.partiql.value.DecimalValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLte.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnLte.kt similarity index 98% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLte.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnLte.kt index 51be999572..d1047f63bf 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnLte.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnLte.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.DateValue import org.partiql.value.DecimalValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnMinus.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnMinus.kt similarity index 96% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnMinus.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnMinus.kt index cd76e4a29a..d3511c93f4 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnMinus.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnMinus.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Float32Value import org.partiql.value.Float64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnModulo.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnModulo.kt similarity index 96% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnModulo.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnModulo.kt index c4866f8560..f16af45026 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnModulo.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnModulo.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Float32Value import org.partiql.value.Float64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNeg.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnNeg.kt similarity index 96% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNeg.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnNeg.kt index 479678f164..3c753d140c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNeg.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnNeg.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Float32Value import org.partiql.value.Float64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNot.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnNot.kt similarity index 80% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNot.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnNot.kt index 82c35cd417..62ee94fc01 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnNot.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnNot.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOctetLength.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnOctetLength.kt similarity index 91% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOctetLength.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnOctetLength.kt index aef6315e11..ed55d75943 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOctetLength.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnOctetLength.kt @@ -1,8 +1,8 @@ -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.ClobValue import org.partiql.value.Int32Value import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOr.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnOr.kt similarity index 84% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOr.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnOr.kt index 88e6367a59..d839e2c004 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnOr.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnOr.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.BoolValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPlus.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnPlus.kt similarity index 96% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPlus.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnPlus.kt index 77e1668178..4fdaf03772 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPlus.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnPlus.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Float32Value import org.partiql.value.Float64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPos.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnPos.kt similarity index 95% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPos.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnPos.kt index 22991c9c6d..7b3974485f 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPos.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnPos.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.DECIMAL_ARBITRARY diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPosition.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnPosition.kt similarity index 90% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPosition.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnPosition.kt index 81558148f9..462ccdc344 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnPosition.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnPosition.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature -import org.partiql.planner.internal.fn.utils.StringUtils.codepointPosition +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature +import org.partiql.spi.fn.utils.StringUtils.codepointPosition import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSize.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnSize.kt similarity index 92% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSize.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnSize.kt index 2fc463297a..53895d1f17 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSize.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnSize.kt @@ -1,8 +1,8 @@ -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.BagValue import org.partiql.value.ListValue import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSubstring.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnSubstring.kt similarity index 96% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSubstring.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnSubstring.kt index cd5e68d81a..606c5bddbd 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnSubstring.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnSubstring.kt @@ -1,14 +1,14 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins import org.partiql.errors.DataException import org.partiql.errors.TypeCheckException -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature -import org.partiql.planner.internal.fn.utils.StringUtils.codepointSubstring +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature +import org.partiql.spi.fn.utils.StringUtils.codepointSubstring import org.partiql.value.ClobValue import org.partiql.value.Int64Value import org.partiql.value.PartiQLValue diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTimes.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTimes.kt similarity index 96% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTimes.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTimes.kt index b1e47bd905..7540a330fe 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTimes.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTimes.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.DecimalValue import org.partiql.value.Float32Value import org.partiql.value.Float64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrim.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrim.kt similarity index 92% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrim.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrim.kt index 5fdb276541..32ceb9bab4 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrim.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrim.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature -import org.partiql.planner.internal.fn.utils.StringUtils.codepointTrim +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature +import org.partiql.spi.fn.utils.StringUtils.codepointTrim import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimChars.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrimChars.kt similarity index 90% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimChars.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrimChars.kt index 6a9a06fd8d..bb52f86b6d 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimChars.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrimChars.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature -import org.partiql.planner.internal.fn.utils.StringUtils.codepointTrim +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature +import org.partiql.spi.fn.utils.StringUtils.codepointTrim import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimLeading.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrimLeading.kt similarity index 88% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimLeading.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrimLeading.kt index 95d4003e7f..b1a3759207 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimLeading.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrimLeading.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature -import org.partiql.planner.internal.fn.utils.StringUtils.codepointTrimLeading +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature +import org.partiql.spi.fn.utils.StringUtils.codepointTrimLeading import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimLeadingChars.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrimLeadingChars.kt similarity index 90% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimLeadingChars.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrimLeadingChars.kt index 858038bfd5..8e096b1b89 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimLeadingChars.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrimLeadingChars.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature -import org.partiql.planner.internal.fn.utils.StringUtils.codepointTrimLeading +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature +import org.partiql.spi.fn.utils.StringUtils.codepointTrimLeading import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimTrailing.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrimTrailing.kt similarity index 88% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimTrailing.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrimTrailing.kt index 9c3bb28985..822837ee82 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimTrailing.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrimTrailing.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature -import org.partiql.planner.internal.fn.utils.StringUtils.codepointTrimTrailing +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature +import org.partiql.spi.fn.utils.StringUtils.codepointTrimTrailing import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimTrailingChars.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrimTrailingChars.kt similarity index 90% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimTrailingChars.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrimTrailingChars.kt index 1999c83404..0a2c32a13c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnTrimTrailingChars.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnTrimTrailingChars.kt @@ -1,12 +1,12 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature -import org.partiql.planner.internal.fn.utils.StringUtils.codepointTrimTrailing +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature +import org.partiql.spi.fn.utils.StringUtils.codepointTrimTrailing import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUpper.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnUpper.kt similarity index 91% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUpper.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnUpper.kt index 3407002de8..bd8680c4b8 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUpper.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnUpper.kt @@ -1,11 +1,11 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnParameter -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnParameter +import org.partiql.spi.fn.FnSignature import org.partiql.value.ClobValue import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUtcnow.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnUtcnow.kt similarity index 83% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUtcnow.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnUtcnow.kt index 431b0fe6c1..779239b027 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/FnUtcnow.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/FnUtcnow.kt @@ -1,10 +1,10 @@ // ktlint-disable filename @file:Suppress("ClassName") -package org.partiql.planner.internal.fn.builtins +package org.partiql.spi.fn.builtins -import org.partiql.planner.internal.fn.Fn -import org.partiql.planner.internal.fn.FnSignature +import org.partiql.spi.fn.Fn +import org.partiql.spi.fn.FnSignature import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.PartiQLValueType.TIMESTAMP diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/Accumulator.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/Accumulator.kt similarity index 98% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/Accumulator.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/Accumulator.kt index f985f54b4c..99bca5144e 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/Accumulator.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/Accumulator.kt @@ -14,11 +14,11 @@ @file:OptIn(PartiQLValueExperimental::class) -package org.partiql.planner.internal.fn.builtins.internal +package org.partiql.spi.fn.builtins.internal import com.amazon.ion.Decimal import org.partiql.errors.TypeCheckException -import org.partiql.planner.internal.fn.Agg +import org.partiql.spi.fn.Agg import org.partiql.value.BoolValue import org.partiql.value.DecimalValue import org.partiql.value.Float32Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorAnySome.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorAnySome.kt similarity index 90% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorAnySome.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorAnySome.kt index 3eba785613..7efb051f42 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorAnySome.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorAnySome.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.builtins.internal +package org.partiql.spi.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorAvg.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorAvg.kt similarity index 92% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorAvg.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorAvg.kt index 1025292ab9..544ce8a01f 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorAvg.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorAvg.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.builtins.internal +package org.partiql.spi.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorCount.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorCount.kt similarity index 86% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorCount.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorCount.kt index e99f030549..0156d67079 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorCount.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorCount.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.builtins.internal +package org.partiql.spi.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorCountStar.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorCountStar.kt similarity index 79% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorCountStar.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorCountStar.kt index da323db940..1ac131ab55 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorCountStar.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorCountStar.kt @@ -1,6 +1,6 @@ -package org.partiql.planner.internal.fn.builtins.internal +package org.partiql.spi.fn.builtins.internal -import org.partiql.planner.internal.fn.Agg +import org.partiql.spi.fn.Agg import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental import org.partiql.value.int64Value diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorEvery.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorEvery.kt similarity index 91% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorEvery.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorEvery.kt index 810c43a137..22499f9836 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorEvery.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorEvery.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.builtins.internal +package org.partiql.spi.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorGroupAs.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorGroupAs.kt similarity index 87% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorGroupAs.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorGroupAs.kt index 8dcbb8cd74..d3f4431159 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorGroupAs.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorGroupAs.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.builtins.internal +package org.partiql.spi.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorMax.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorMax.kt similarity index 88% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorMax.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorMax.kt index dc9c2dc1df..e50e3a2017 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorMax.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorMax.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.builtins.internal +package org.partiql.spi.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorMin.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorMin.kt similarity index 88% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorMin.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorMin.kt index be11254eea..3734ea101c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorMin.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorMin.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.builtins.internal +package org.partiql.spi.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorSum.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorSum.kt similarity index 92% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorSum.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorSum.kt index eb74b16a62..1e1c080ad4 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/builtins/internal/AccumulatorSum.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/builtins/internal/AccumulatorSum.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.builtins.internal +package org.partiql.spi.fn.builtins.internal import org.partiql.value.PartiQLValue import org.partiql.value.PartiQLValueExperimental diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/utils/PatternUtils.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/utils/PatternUtils.kt similarity index 98% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/utils/PatternUtils.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/utils/PatternUtils.kt index 07e24e8049..60f9f22c3c 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/utils/PatternUtils.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/utils/PatternUtils.kt @@ -1,6 +1,6 @@ -package org.partiql.planner.internal.fn.utils +package org.partiql.spi.fn.utils -import org.partiql.planner.internal.fn.utils.StringUtils.codePointSequence +import org.partiql.spi.fn.utils.StringUtils.codePointSequence import java.util.regex.Pattern internal object PatternUtils { diff --git a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/utils/StringUtils.kt b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/utils/StringUtils.kt similarity index 99% rename from partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/utils/StringUtils.kt rename to partiql-spi/src/main/kotlin/org/partiql/spi/fn/utils/StringUtils.kt index 24b9e67d99..adfa0260ff 100644 --- a/partiql-planner/src/main/kotlin/org/partiql/planner/internal/fn/utils/StringUtils.kt +++ b/partiql-spi/src/main/kotlin/org/partiql/spi/fn/utils/StringUtils.kt @@ -1,4 +1,4 @@ -package org.partiql.planner.internal.fn.utils +package org.partiql.spi.fn.utils internal object StringUtils {