From 741e5d0df4585e39a8baad1d019ad93d09b3bb89 Mon Sep 17 00:00:00 2001 From: Sokwhan Huh Date: Fri, 31 Oct 2025 15:34:05 -0700 Subject: [PATCH] Remove redundant FunctionBindingCreator interface, consolidate with CelStandardOverload PiperOrigin-RevId: 826652181 --- .../dev/cel/runtime/CelStandardFunctions.java | 453 ++++++++---------- .../dev/cel/runtime/standard/AddOperator.java | 8 +- .../cel/runtime/standard/BoolFunction.java | 8 +- .../cel/runtime/standard/BytesFunction.java | 8 +- .../runtime/standard/CelStandardOverload.java | 8 +- .../runtime/standard/ContainsFunction.java | 8 +- .../cel/runtime/standard/DivideOperator.java | 8 +- .../cel/runtime/standard/DoubleFunction.java | 8 +- .../runtime/standard/DurationFunction.java | 8 +- .../dev/cel/runtime/standard/DynFunction.java | 8 +- .../runtime/standard/EndsWithFunction.java | 8 +- .../cel/runtime/standard/EqualsOperator.java | 8 +- .../cel/runtime/standard/GetDateFunction.java | 8 +- .../standard/GetDayOfMonthFunction.java | 8 +- .../standard/GetDayOfWeekFunction.java | 8 +- .../standard/GetDayOfYearFunction.java | 8 +- .../runtime/standard/GetFullYearFunction.java | 8 +- .../runtime/standard/GetHoursFunction.java | 8 +- .../standard/GetMillisecondsFunction.java | 8 +- .../runtime/standard/GetMinutesFunction.java | 8 +- .../runtime/standard/GetMonthFunction.java | 8 +- .../runtime/standard/GetSecondsFunction.java | 8 +- .../standard/GreaterEqualsOperator.java | 8 +- .../cel/runtime/standard/GreaterOperator.java | 8 +- .../dev/cel/runtime/standard/InOperator.java | 8 +- .../cel/runtime/standard/IndexOperator.java | 8 +- .../dev/cel/runtime/standard/IntFunction.java | 8 +- .../runtime/standard/LessEqualsOperator.java | 8 +- .../cel/runtime/standard/LessOperator.java | 8 +- .../runtime/standard/LogicalNotOperator.java | 8 +- .../cel/runtime/standard/MatchesFunction.java | 8 +- .../cel/runtime/standard/ModuloOperator.java | 8 +- .../runtime/standard/MultiplyOperator.java | 8 +- .../cel/runtime/standard/NegateOperator.java | 8 +- .../runtime/standard/NotEqualsOperator.java | 8 +- .../cel/runtime/standard/SizeFunction.java | 8 +- .../runtime/standard/StartsWithFunction.java | 8 +- .../cel/runtime/standard/StringFunction.java | 8 +- .../runtime/standard/SubtractOperator.java | 8 +- .../runtime/standard/TimestampFunction.java | 8 +- .../cel/runtime/standard/UintFunction.java | 8 +- 41 files changed, 369 insertions(+), 404 deletions(-) diff --git a/runtime/src/main/java/dev/cel/runtime/CelStandardFunctions.java b/runtime/src/main/java/dev/cel/runtime/CelStandardFunctions.java index 7d781d4af..6742dc42f 100644 --- a/runtime/src/main/java/dev/cel/runtime/CelStandardFunctions.java +++ b/runtime/src/main/java/dev/cel/runtime/CelStandardFunctions.java @@ -333,181 +333,179 @@ public static final class Overload { /** Overloads for internal functions that may have been rewritten by macros (ex: @in) */ public enum InternalOperator implements CelStandardOverload { - IN_LIST(InOverload.IN_LIST::newFunctionBinding), - IN_MAP(InOverload.IN_MAP::newFunctionBinding); + IN_LIST(InOverload.IN_LIST), + IN_MAP(InOverload.IN_MAP); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - InternalOperator(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + InternalOperator(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } /** Overloads for functions that test relations. */ public enum Relation implements CelStandardOverload { - EQUALS(EqualsOverload.EQUALS::newFunctionBinding), - NOT_EQUALS(NotEqualsOverload.NOT_EQUALS::newFunctionBinding); + EQUALS(EqualsOverload.EQUALS), + NOT_EQUALS(NotEqualsOverload.NOT_EQUALS); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - Relation(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + Relation(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } /** Overloads for performing arithmetic operations. */ public enum Arithmetic implements CelStandardOverload { - ADD_INT64(AddOverload.ADD_INT64::newFunctionBinding), - ADD_UINT64(AddOverload.ADD_UINT64::newFunctionBinding), - ADD_BYTES(AddOverload.ADD_BYTES::newFunctionBinding), - ADD_DOUBLE(AddOverload.ADD_DOUBLE::newFunctionBinding), - ADD_DURATION_DURATION(AddOverload.ADD_DURATION_DURATION::newFunctionBinding), - ADD_TIMESTAMP_DURATION(AddOverload.ADD_TIMESTAMP_DURATION::newFunctionBinding), - ADD_STRING(AddOverload.ADD_STRING::newFunctionBinding), - ADD_DURATION_TIMESTAMP(AddOverload.ADD_DURATION_TIMESTAMP::newFunctionBinding), - ADD_LIST(AddOverload.ADD_LIST::newFunctionBinding), - - SUBTRACT_INT64(SubtractOverload.SUBTRACT_INT64::newFunctionBinding), - SUBTRACT_TIMESTAMP_TIMESTAMP( - SubtractOverload.SUBTRACT_TIMESTAMP_TIMESTAMP::newFunctionBinding), - SUBTRACT_TIMESTAMP_DURATION( - SubtractOverload.SUBTRACT_TIMESTAMP_DURATION::newFunctionBinding), - SUBTRACT_UINT64(SubtractOverload.SUBTRACT_UINT64::newFunctionBinding), - SUBTRACT_DOUBLE(SubtractOverload.SUBTRACT_DOUBLE::newFunctionBinding), - SUBTRACT_DURATION_DURATION(SubtractOverload.SUBTRACT_DURATION_DURATION::newFunctionBinding), - - MULTIPLY_INT64(MultiplyOverload.MULTIPLY_INT64::newFunctionBinding), - MULTIPLY_DOUBLE(MultiplyOverload.MULTIPLY_DOUBLE::newFunctionBinding), - MULTIPLY_UINT64(MultiplyOverload.MULTIPLY_UINT64::newFunctionBinding), - - DIVIDE_DOUBLE(DivideOverload.DIVIDE_DOUBLE::newFunctionBinding), - DIVIDE_INT64(DivideOverload.DIVIDE_INT64::newFunctionBinding), - DIVIDE_UINT64(DivideOverload.DIVIDE_UINT64::newFunctionBinding), - - MODULO_INT64(ModuloOverload.MODULO_INT64::newFunctionBinding), - MODULO_UINT64(ModuloOverload.MODULO_UINT64::newFunctionBinding), - - NEGATE_INT64(NegateOverload.NEGATE_INT64::newFunctionBinding), - NEGATE_DOUBLE(NegateOverload.NEGATE_DOUBLE::newFunctionBinding); - - private final FunctionBindingCreator bindingCreator; + ADD_INT64(AddOverload.ADD_INT64), + ADD_UINT64(AddOverload.ADD_UINT64), + ADD_BYTES(AddOverload.ADD_BYTES), + ADD_DOUBLE(AddOverload.ADD_DOUBLE), + ADD_DURATION_DURATION(AddOverload.ADD_DURATION_DURATION), + ADD_TIMESTAMP_DURATION(AddOverload.ADD_TIMESTAMP_DURATION), + ADD_STRING(AddOverload.ADD_STRING), + ADD_DURATION_TIMESTAMP(AddOverload.ADD_DURATION_TIMESTAMP), + ADD_LIST(AddOverload.ADD_LIST), + + SUBTRACT_INT64(SubtractOverload.SUBTRACT_INT64), + SUBTRACT_TIMESTAMP_TIMESTAMP(SubtractOverload.SUBTRACT_TIMESTAMP_TIMESTAMP), + SUBTRACT_TIMESTAMP_DURATION(SubtractOverload.SUBTRACT_TIMESTAMP_DURATION), + SUBTRACT_UINT64(SubtractOverload.SUBTRACT_UINT64), + SUBTRACT_DOUBLE(SubtractOverload.SUBTRACT_DOUBLE), + SUBTRACT_DURATION_DURATION(SubtractOverload.SUBTRACT_DURATION_DURATION), + + MULTIPLY_INT64(MultiplyOverload.MULTIPLY_INT64), + MULTIPLY_DOUBLE(MultiplyOverload.MULTIPLY_DOUBLE), + MULTIPLY_UINT64(MultiplyOverload.MULTIPLY_UINT64), + + DIVIDE_DOUBLE(DivideOverload.DIVIDE_DOUBLE), + DIVIDE_INT64(DivideOverload.DIVIDE_INT64), + DIVIDE_UINT64(DivideOverload.DIVIDE_UINT64), + + MODULO_INT64(ModuloOverload.MODULO_INT64), + MODULO_UINT64(ModuloOverload.MODULO_UINT64), + + NEGATE_INT64(NegateOverload.NEGATE_INT64), + NEGATE_DOUBLE(NegateOverload.NEGATE_DOUBLE); + + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - Arithmetic(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + Arithmetic(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } /** Overloads for indexing a list or a map. */ public enum Index implements CelStandardOverload { - INDEX_LIST(IndexOverload.INDEX_LIST::newFunctionBinding), - INDEX_MAP(IndexOverload.INDEX_MAP::newFunctionBinding); + INDEX_LIST(IndexOverload.INDEX_LIST), + INDEX_MAP(IndexOverload.INDEX_MAP); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - Index(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + Index(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } /** Overloads for retrieving the size of a literal or a collection. */ public enum Size implements CelStandardOverload { - SIZE_BYTES(SizeOverload.SIZE_BYTES::newFunctionBinding), - BYTES_SIZE(SizeOverload.BYTES_SIZE::newFunctionBinding), - SIZE_LIST(SizeOverload.SIZE_LIST::newFunctionBinding), - LIST_SIZE(SizeOverload.LIST_SIZE::newFunctionBinding), - SIZE_STRING(SizeOverload.SIZE_STRING::newFunctionBinding), - STRING_SIZE(SizeOverload.STRING_SIZE::newFunctionBinding), - SIZE_MAP(SizeOverload.SIZE_MAP::newFunctionBinding), - MAP_SIZE(SizeOverload.MAP_SIZE::newFunctionBinding); + SIZE_BYTES(SizeOverload.SIZE_BYTES), + BYTES_SIZE(SizeOverload.BYTES_SIZE), + SIZE_LIST(SizeOverload.SIZE_LIST), + LIST_SIZE(SizeOverload.LIST_SIZE), + SIZE_STRING(SizeOverload.SIZE_STRING), + STRING_SIZE(SizeOverload.STRING_SIZE), + SIZE_MAP(SizeOverload.SIZE_MAP), + MAP_SIZE(SizeOverload.MAP_SIZE); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - Size(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + Size(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } /** Overloads for performing type conversions. */ public enum Conversions implements CelStandardOverload { - BOOL_TO_BOOL(BoolOverload.BOOL_TO_BOOL::newFunctionBinding), - STRING_TO_BOOL(BoolOverload.STRING_TO_BOOL::newFunctionBinding), - INT64_TO_INT64(IntOverload.INT64_TO_INT64::newFunctionBinding), - DOUBLE_TO_INT64(IntOverload.DOUBLE_TO_INT64::newFunctionBinding), - STRING_TO_INT64(IntOverload.STRING_TO_INT64::newFunctionBinding), - TIMESTAMP_TO_INT64(IntOverload.TIMESTAMP_TO_INT64::newFunctionBinding), - UINT64_TO_INT64(IntOverload.UINT64_TO_INT64::newFunctionBinding), - - UINT64_TO_UINT64(UintOverload.UINT64_TO_UINT64::newFunctionBinding), - INT64_TO_UINT64(UintOverload.INT64_TO_UINT64::newFunctionBinding), - DOUBLE_TO_UINT64(UintOverload.DOUBLE_TO_UINT64::newFunctionBinding), - STRING_TO_UINT64(UintOverload.STRING_TO_UINT64::newFunctionBinding), - - DOUBLE_TO_DOUBLE(DoubleOverload.DOUBLE_TO_DOUBLE::newFunctionBinding), - INT64_TO_DOUBLE(DoubleOverload.INT64_TO_DOUBLE::newFunctionBinding), - STRING_TO_DOUBLE(DoubleOverload.STRING_TO_DOUBLE::newFunctionBinding), - UINT64_TO_DOUBLE(DoubleOverload.UINT64_TO_DOUBLE::newFunctionBinding), - - STRING_TO_STRING(StringOverload.STRING_TO_STRING::newFunctionBinding), - INT64_TO_STRING(StringOverload.INT64_TO_STRING::newFunctionBinding), - DOUBLE_TO_STRING(StringOverload.DOUBLE_TO_STRING::newFunctionBinding), - BOOL_TO_STRING(StringOverload.BOOL_TO_STRING::newFunctionBinding), - BYTES_TO_STRING(StringOverload.BYTES_TO_STRING::newFunctionBinding), - TIMESTAMP_TO_STRING(StringOverload.TIMESTAMP_TO_STRING::newFunctionBinding), - DURATION_TO_STRING(StringOverload.DURATION_TO_STRING::newFunctionBinding), - UINT64_TO_STRING(StringOverload.UINT64_TO_STRING::newFunctionBinding), - - BYTES_TO_BYTES(BytesOverload.BYTES_TO_BYTES::newFunctionBinding), - STRING_TO_BYTES(BytesOverload.STRING_TO_BYTES::newFunctionBinding), - - DURATION_TO_DURATION(DurationOverload.DURATION_TO_DURATION::newFunctionBinding), - STRING_TO_DURATION(DurationOverload.STRING_TO_DURATION::newFunctionBinding), - - STRING_TO_TIMESTAMP(TimestampOverload.STRING_TO_TIMESTAMP::newFunctionBinding), - TIMESTAMP_TO_TIMESTAMP(TimestampOverload.TIMESTAMP_TO_TIMESTAMP::newFunctionBinding), - INT64_TO_TIMESTAMP(TimestampOverload.INT64_TO_TIMESTAMP::newFunctionBinding), - - TO_DYN(DynOverload.TO_DYN::newFunctionBinding); - - private final FunctionBindingCreator bindingCreator; + BOOL_TO_BOOL(BoolOverload.BOOL_TO_BOOL), + STRING_TO_BOOL(BoolOverload.STRING_TO_BOOL), + INT64_TO_INT64(IntOverload.INT64_TO_INT64), + DOUBLE_TO_INT64(IntOverload.DOUBLE_TO_INT64), + STRING_TO_INT64(IntOverload.STRING_TO_INT64), + TIMESTAMP_TO_INT64(IntOverload.TIMESTAMP_TO_INT64), + UINT64_TO_INT64(IntOverload.UINT64_TO_INT64), + + UINT64_TO_UINT64(UintOverload.UINT64_TO_UINT64), + INT64_TO_UINT64(UintOverload.INT64_TO_UINT64), + DOUBLE_TO_UINT64(UintOverload.DOUBLE_TO_UINT64), + STRING_TO_UINT64(UintOverload.STRING_TO_UINT64), + + DOUBLE_TO_DOUBLE(DoubleOverload.DOUBLE_TO_DOUBLE), + INT64_TO_DOUBLE(DoubleOverload.INT64_TO_DOUBLE), + STRING_TO_DOUBLE(DoubleOverload.STRING_TO_DOUBLE), + UINT64_TO_DOUBLE(DoubleOverload.UINT64_TO_DOUBLE), + + STRING_TO_STRING(StringOverload.STRING_TO_STRING), + INT64_TO_STRING(StringOverload.INT64_TO_STRING), + DOUBLE_TO_STRING(StringOverload.DOUBLE_TO_STRING), + BOOL_TO_STRING(StringOverload.BOOL_TO_STRING), + BYTES_TO_STRING(StringOverload.BYTES_TO_STRING), + TIMESTAMP_TO_STRING(StringOverload.TIMESTAMP_TO_STRING), + DURATION_TO_STRING(StringOverload.DURATION_TO_STRING), + UINT64_TO_STRING(StringOverload.UINT64_TO_STRING), + + BYTES_TO_BYTES(BytesOverload.BYTES_TO_BYTES), + STRING_TO_BYTES(BytesOverload.STRING_TO_BYTES), + + DURATION_TO_DURATION(DurationOverload.DURATION_TO_DURATION), + STRING_TO_DURATION(DurationOverload.STRING_TO_DURATION), + + STRING_TO_TIMESTAMP(TimestampOverload.STRING_TO_TIMESTAMP), + TIMESTAMP_TO_TIMESTAMP(TimestampOverload.TIMESTAMP_TO_TIMESTAMP), + INT64_TO_TIMESTAMP(TimestampOverload.INT64_TO_TIMESTAMP), + + TO_DYN(DynOverload.TO_DYN); + + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - Conversions(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + Conversions(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } @@ -516,182 +514,155 @@ public CelFunctionBinding newFunctionBinding( * check. */ public enum StringMatchers implements CelStandardOverload { - MATCHES(MatchesOverload.MATCHES::newFunctionBinding), - MATCHES_STRING(MatchesOverload.MATCHES_STRING::newFunctionBinding), - CONTAINS_STRING(ContainsOverload.CONTAINS_STRING::newFunctionBinding), - ENDS_WITH_STRING(EndsWithOverload.ENDS_WITH_STRING::newFunctionBinding), - STARTS_WITH_STRING(StartsWithOverload.STARTS_WITH_STRING::newFunctionBinding); + MATCHES(MatchesOverload.MATCHES), + MATCHES_STRING(MatchesOverload.MATCHES_STRING), + CONTAINS_STRING(ContainsOverload.CONTAINS_STRING), + ENDS_WITH_STRING(EndsWithOverload.ENDS_WITH_STRING), + STARTS_WITH_STRING(StartsWithOverload.STARTS_WITH_STRING); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - StringMatchers(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + StringMatchers(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } /** Overloads for logical operators that return a bool as a result. */ public enum BooleanOperator implements CelStandardOverload { - LOGICAL_NOT(LogicalNotOverload.LOGICAL_NOT::newFunctionBinding); + LOGICAL_NOT(LogicalNotOverload.LOGICAL_NOT); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - BooleanOperator(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + BooleanOperator(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } /** Overloads for functions performing date/time operations. */ public enum DateTime implements CelStandardOverload { - TIMESTAMP_TO_YEAR(GetFullYearOverload.TIMESTAMP_TO_YEAR::newFunctionBinding), - TIMESTAMP_TO_YEAR_WITH_TZ( - GetFullYearOverload.TIMESTAMP_TO_YEAR_WITH_TZ::newFunctionBinding), - TIMESTAMP_TO_MONTH(GetMonthOverload.TIMESTAMP_TO_MONTH::newFunctionBinding), - TIMESTAMP_TO_MONTH_WITH_TZ(GetMonthOverload.TIMESTAMP_TO_MONTH_WITH_TZ::newFunctionBinding), - TIMESTAMP_TO_DAY_OF_YEAR(GetDayOfYearOverload.TIMESTAMP_TO_DAY_OF_YEAR::newFunctionBinding), - TIMESTAMP_TO_DAY_OF_YEAR_WITH_TZ( - GetDayOfYearOverload.TIMESTAMP_TO_DAY_OF_YEAR_WITH_TZ::newFunctionBinding), - TIMESTAMP_TO_DAY_OF_MONTH( - GetDayOfMonthOverload.TIMESTAMP_TO_DAY_OF_MONTH::newFunctionBinding), - TIMESTAMP_TO_DAY_OF_MONTH_WITH_TZ( - GetDayOfMonthOverload.TIMESTAMP_TO_DAY_OF_MONTH_WITH_TZ::newFunctionBinding), - TIMESTAMP_TO_DAY_OF_MONTH_1_BASED( - GetDateOverload.TIMESTAMP_TO_DAY_OF_MONTH_1_BASED::newFunctionBinding), + TIMESTAMP_TO_YEAR(GetFullYearOverload.TIMESTAMP_TO_YEAR), + TIMESTAMP_TO_YEAR_WITH_TZ(GetFullYearOverload.TIMESTAMP_TO_YEAR_WITH_TZ), + TIMESTAMP_TO_MONTH(GetMonthOverload.TIMESTAMP_TO_MONTH), + TIMESTAMP_TO_MONTH_WITH_TZ(GetMonthOverload.TIMESTAMP_TO_MONTH_WITH_TZ), + TIMESTAMP_TO_DAY_OF_YEAR(GetDayOfYearOverload.TIMESTAMP_TO_DAY_OF_YEAR), + TIMESTAMP_TO_DAY_OF_YEAR_WITH_TZ(GetDayOfYearOverload.TIMESTAMP_TO_DAY_OF_YEAR_WITH_TZ), + TIMESTAMP_TO_DAY_OF_MONTH(GetDayOfMonthOverload.TIMESTAMP_TO_DAY_OF_MONTH), + TIMESTAMP_TO_DAY_OF_MONTH_WITH_TZ(GetDayOfMonthOverload.TIMESTAMP_TO_DAY_OF_MONTH_WITH_TZ), + TIMESTAMP_TO_DAY_OF_MONTH_1_BASED(GetDateOverload.TIMESTAMP_TO_DAY_OF_MONTH_1_BASED), TIMESTAMP_TO_DAY_OF_MONTH_1_BASED_WITH_TZ( - GetDateOverload.TIMESTAMP_TO_DAY_OF_MONTH_1_BASED_WITH_TZ::newFunctionBinding), - - TIMESTAMP_TO_DAY_OF_WEEK(GetDayOfWeekOverload.TIMESTAMP_TO_DAY_OF_WEEK::newFunctionBinding), - TIMESTAMP_TO_DAY_OF_WEEK_WITH_TZ( - GetDayOfWeekOverload.TIMESTAMP_TO_DAY_OF_WEEK_WITH_TZ::newFunctionBinding), - TIMESTAMP_TO_HOURS(GetHoursOverload.TIMESTAMP_TO_HOURS::newFunctionBinding), - TIMESTAMP_TO_HOURS_WITH_TZ(GetHoursOverload.TIMESTAMP_TO_HOURS_WITH_TZ::newFunctionBinding), - TIMESTAMP_TO_MINUTES(GetMinutesOverload.TIMESTAMP_TO_MINUTES::newFunctionBinding), - TIMESTAMP_TO_MINUTES_WITH_TZ( - GetMinutesOverload.TIMESTAMP_TO_MINUTES_WITH_TZ::newFunctionBinding), - TIMESTAMP_TO_SECONDS(GetSecondsOverload.TIMESTAMP_TO_SECONDS::newFunctionBinding), - TIMESTAMP_TO_SECONDS_WITH_TZ( - GetSecondsOverload.TIMESTAMP_TO_SECONDS_WITH_TZ::newFunctionBinding), - TIMESTAMP_TO_MILLISECONDS( - GetMillisecondsOverload.TIMESTAMP_TO_MILLISECONDS::newFunctionBinding), + GetDateOverload.TIMESTAMP_TO_DAY_OF_MONTH_1_BASED_WITH_TZ), + + TIMESTAMP_TO_DAY_OF_WEEK(GetDayOfWeekOverload.TIMESTAMP_TO_DAY_OF_WEEK), + TIMESTAMP_TO_DAY_OF_WEEK_WITH_TZ(GetDayOfWeekOverload.TIMESTAMP_TO_DAY_OF_WEEK_WITH_TZ), + TIMESTAMP_TO_HOURS(GetHoursOverload.TIMESTAMP_TO_HOURS), + TIMESTAMP_TO_HOURS_WITH_TZ(GetHoursOverload.TIMESTAMP_TO_HOURS_WITH_TZ), + TIMESTAMP_TO_MINUTES(GetMinutesOverload.TIMESTAMP_TO_MINUTES), + TIMESTAMP_TO_MINUTES_WITH_TZ(GetMinutesOverload.TIMESTAMP_TO_MINUTES_WITH_TZ), + TIMESTAMP_TO_SECONDS(GetSecondsOverload.TIMESTAMP_TO_SECONDS), + TIMESTAMP_TO_SECONDS_WITH_TZ(GetSecondsOverload.TIMESTAMP_TO_SECONDS_WITH_TZ), + TIMESTAMP_TO_MILLISECONDS(GetMillisecondsOverload.TIMESTAMP_TO_MILLISECONDS), TIMESTAMP_TO_MILLISECONDS_WITH_TZ( - GetMillisecondsOverload.TIMESTAMP_TO_MILLISECONDS_WITH_TZ::newFunctionBinding), - DURATION_TO_HOURS(GetHoursOverload.DURATION_TO_HOURS::newFunctionBinding), - DURATION_TO_MINUTES(GetMinutesOverload.DURATION_TO_MINUTES::newFunctionBinding), - DURATION_TO_SECONDS(GetSecondsOverload.DURATION_TO_SECONDS::newFunctionBinding), - DURATION_TO_MILLISECONDS( - GetMillisecondsOverload.DURATION_TO_MILLISECONDS::newFunctionBinding); + GetMillisecondsOverload.TIMESTAMP_TO_MILLISECONDS_WITH_TZ), + DURATION_TO_HOURS(GetHoursOverload.DURATION_TO_HOURS), + DURATION_TO_MINUTES(GetMinutesOverload.DURATION_TO_MINUTES), + DURATION_TO_SECONDS(GetSecondsOverload.DURATION_TO_SECONDS), + DURATION_TO_MILLISECONDS(GetMillisecondsOverload.DURATION_TO_MILLISECONDS); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - DateTime(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + DateTime(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } /** Overloads for performing numeric comparisons. */ public enum Comparison implements CelStandardOverload { - LESS_BOOL(LessOverload.LESS_BOOL::newFunctionBinding, false), - LESS_INT64(LessOverload.LESS_INT64::newFunctionBinding, false), - LESS_UINT64(LessOverload.LESS_UINT64::newFunctionBinding, false), - LESS_BYTES(LessOverload.LESS_BYTES::newFunctionBinding, false), - LESS_DOUBLE(LessOverload.LESS_DOUBLE::newFunctionBinding, false), - LESS_DOUBLE_UINT64(LessOverload.LESS_DOUBLE_UINT64::newFunctionBinding, true), - LESS_INT64_UINT64(LessOverload.LESS_INT64_UINT64::newFunctionBinding, true), - LESS_UINT64_INT64(LessOverload.LESS_UINT64_INT64::newFunctionBinding, true), - LESS_INT64_DOUBLE(LessOverload.LESS_INT64_DOUBLE::newFunctionBinding, true), - LESS_DOUBLE_INT64(LessOverload.LESS_DOUBLE_INT64::newFunctionBinding, true), - LESS_UINT64_DOUBLE(LessOverload.LESS_UINT64_DOUBLE::newFunctionBinding, true), - LESS_DURATION(LessOverload.LESS_DURATION::newFunctionBinding, false), - LESS_STRING(LessOverload.LESS_STRING::newFunctionBinding, false), - LESS_TIMESTAMP(LessOverload.LESS_TIMESTAMP::newFunctionBinding, false), - LESS_EQUALS_BOOL(LessEqualsOverload.LESS_EQUALS_BOOL::newFunctionBinding, false), - LESS_EQUALS_BYTES(LessEqualsOverload.LESS_EQUALS_BYTES::newFunctionBinding, false), - LESS_EQUALS_DOUBLE(LessEqualsOverload.LESS_EQUALS_DOUBLE::newFunctionBinding, false), - LESS_EQUALS_DURATION(LessEqualsOverload.LESS_EQUALS_DURATION::newFunctionBinding, false), - LESS_EQUALS_INT64(LessEqualsOverload.LESS_EQUALS_INT64::newFunctionBinding, false), - LESS_EQUALS_STRING(LessEqualsOverload.LESS_EQUALS_STRING::newFunctionBinding, false), - LESS_EQUALS_TIMESTAMP(LessEqualsOverload.LESS_EQUALS_TIMESTAMP::newFunctionBinding, false), - LESS_EQUALS_UINT64(LessEqualsOverload.LESS_EQUALS_UINT64::newFunctionBinding, false), - LESS_EQUALS_INT64_UINT64( - LessEqualsOverload.LESS_EQUALS_INT64_UINT64::newFunctionBinding, true), - LESS_EQUALS_UINT64_INT64( - LessEqualsOverload.LESS_EQUALS_UINT64_INT64::newFunctionBinding, true), - LESS_EQUALS_INT64_DOUBLE( - LessEqualsOverload.LESS_EQUALS_INT64_DOUBLE::newFunctionBinding, true), - LESS_EQUALS_DOUBLE_INT64( - LessEqualsOverload.LESS_EQUALS_DOUBLE_INT64::newFunctionBinding, true), - LESS_EQUALS_UINT64_DOUBLE( - LessEqualsOverload.LESS_EQUALS_UINT64_DOUBLE::newFunctionBinding, true), - LESS_EQUALS_DOUBLE_UINT64( - LessEqualsOverload.LESS_EQUALS_DOUBLE_UINT64::newFunctionBinding, true), - GREATER_BOOL(GreaterOverload.GREATER_BOOL::newFunctionBinding, false), - GREATER_BYTES(GreaterOverload.GREATER_BYTES::newFunctionBinding, false), - GREATER_DOUBLE(GreaterOverload.GREATER_DOUBLE::newFunctionBinding, false), - GREATER_DURATION(GreaterOverload.GREATER_DURATION::newFunctionBinding, false), - GREATER_INT64(GreaterOverload.GREATER_INT64::newFunctionBinding, false), - GREATER_STRING(GreaterOverload.GREATER_STRING::newFunctionBinding, false), - GREATER_TIMESTAMP(GreaterOverload.GREATER_TIMESTAMP::newFunctionBinding, false), - GREATER_UINT64(GreaterOverload.GREATER_UINT64::newFunctionBinding, false), - GREATER_INT64_UINT64(GreaterOverload.GREATER_INT64_UINT64::newFunctionBinding, true), - GREATER_UINT64_INT64(GreaterOverload.GREATER_UINT64_INT64::newFunctionBinding, true), - GREATER_INT64_DOUBLE(GreaterOverload.GREATER_INT64_DOUBLE::newFunctionBinding, true), - GREATER_DOUBLE_INT64(GreaterOverload.GREATER_DOUBLE_INT64::newFunctionBinding, true), - GREATER_UINT64_DOUBLE(GreaterOverload.GREATER_UINT64_DOUBLE::newFunctionBinding, true), - GREATER_DOUBLE_UINT64(GreaterOverload.GREATER_DOUBLE_UINT64::newFunctionBinding, true), - GREATER_EQUALS_BOOL(GreaterEqualsOverload.GREATER_EQUALS_BOOL::newFunctionBinding, false), - GREATER_EQUALS_BYTES(GreaterEqualsOverload.GREATER_EQUALS_BYTES::newFunctionBinding, false), - GREATER_EQUALS_DOUBLE( - GreaterEqualsOverload.GREATER_EQUALS_DOUBLE::newFunctionBinding, false), - GREATER_EQUALS_DURATION( - GreaterEqualsOverload.GREATER_EQUALS_DURATION::newFunctionBinding, false), - GREATER_EQUALS_INT64(GreaterEqualsOverload.GREATER_EQUALS_INT64::newFunctionBinding, false), - GREATER_EQUALS_STRING( - GreaterEqualsOverload.GREATER_EQUALS_STRING::newFunctionBinding, false), - GREATER_EQUALS_TIMESTAMP( - GreaterEqualsOverload.GREATER_EQUALS_TIMESTAMP::newFunctionBinding, false), - GREATER_EQUALS_UINT64( - GreaterEqualsOverload.GREATER_EQUALS_UINT64::newFunctionBinding, false), - GREATER_EQUALS_INT64_UINT64( - GreaterEqualsOverload.GREATER_EQUALS_INT64_UINT64::newFunctionBinding, true), - GREATER_EQUALS_UINT64_INT64( - GreaterEqualsOverload.GREATER_EQUALS_UINT64_INT64::newFunctionBinding, true), - GREATER_EQUALS_INT64_DOUBLE( - GreaterEqualsOverload.GREATER_EQUALS_INT64_DOUBLE::newFunctionBinding, true), - GREATER_EQUALS_DOUBLE_INT64( - GreaterEqualsOverload.GREATER_EQUALS_DOUBLE_INT64::newFunctionBinding, true), - GREATER_EQUALS_UINT64_DOUBLE( - GreaterEqualsOverload.GREATER_EQUALS_UINT64_DOUBLE::newFunctionBinding, true), - GREATER_EQUALS_DOUBLE_UINT64( - GreaterEqualsOverload.GREATER_EQUALS_DOUBLE_UINT64::newFunctionBinding, true); - - private final FunctionBindingCreator bindingCreator; + LESS_BOOL(LessOverload.LESS_BOOL, false), + LESS_INT64(LessOverload.LESS_INT64, false), + LESS_UINT64(LessOverload.LESS_UINT64, false), + LESS_BYTES(LessOverload.LESS_BYTES, false), + LESS_DOUBLE(LessOverload.LESS_DOUBLE, false), + LESS_DOUBLE_UINT64(LessOverload.LESS_DOUBLE_UINT64, true), + LESS_INT64_UINT64(LessOverload.LESS_INT64_UINT64, true), + LESS_UINT64_INT64(LessOverload.LESS_UINT64_INT64, true), + LESS_INT64_DOUBLE(LessOverload.LESS_INT64_DOUBLE, true), + LESS_DOUBLE_INT64(LessOverload.LESS_DOUBLE_INT64, true), + LESS_UINT64_DOUBLE(LessOverload.LESS_UINT64_DOUBLE, true), + LESS_DURATION(LessOverload.LESS_DURATION, false), + LESS_STRING(LessOverload.LESS_STRING, false), + LESS_TIMESTAMP(LessOverload.LESS_TIMESTAMP, false), + LESS_EQUALS_BOOL(LessEqualsOverload.LESS_EQUALS_BOOL, false), + LESS_EQUALS_BYTES(LessEqualsOverload.LESS_EQUALS_BYTES, false), + LESS_EQUALS_DOUBLE(LessEqualsOverload.LESS_EQUALS_DOUBLE, false), + LESS_EQUALS_DURATION(LessEqualsOverload.LESS_EQUALS_DURATION, false), + LESS_EQUALS_INT64(LessEqualsOverload.LESS_EQUALS_INT64, false), + LESS_EQUALS_STRING(LessEqualsOverload.LESS_EQUALS_STRING, false), + LESS_EQUALS_TIMESTAMP(LessEqualsOverload.LESS_EQUALS_TIMESTAMP, false), + LESS_EQUALS_UINT64(LessEqualsOverload.LESS_EQUALS_UINT64, false), + LESS_EQUALS_INT64_UINT64(LessEqualsOverload.LESS_EQUALS_INT64_UINT64, true), + LESS_EQUALS_UINT64_INT64(LessEqualsOverload.LESS_EQUALS_UINT64_INT64, true), + LESS_EQUALS_INT64_DOUBLE(LessEqualsOverload.LESS_EQUALS_INT64_DOUBLE, true), + LESS_EQUALS_DOUBLE_INT64(LessEqualsOverload.LESS_EQUALS_DOUBLE_INT64, true), + LESS_EQUALS_UINT64_DOUBLE(LessEqualsOverload.LESS_EQUALS_UINT64_DOUBLE, true), + LESS_EQUALS_DOUBLE_UINT64(LessEqualsOverload.LESS_EQUALS_DOUBLE_UINT64, true), + GREATER_BOOL(GreaterOverload.GREATER_BOOL, false), + GREATER_BYTES(GreaterOverload.GREATER_BYTES, false), + GREATER_DOUBLE(GreaterOverload.GREATER_DOUBLE, false), + GREATER_DURATION(GreaterOverload.GREATER_DURATION, false), + GREATER_INT64(GreaterOverload.GREATER_INT64, false), + GREATER_STRING(GreaterOverload.GREATER_STRING, false), + GREATER_TIMESTAMP(GreaterOverload.GREATER_TIMESTAMP, false), + GREATER_UINT64(GreaterOverload.GREATER_UINT64, false), + GREATER_INT64_UINT64(GreaterOverload.GREATER_INT64_UINT64, true), + GREATER_UINT64_INT64(GreaterOverload.GREATER_UINT64_INT64, true), + GREATER_INT64_DOUBLE(GreaterOverload.GREATER_INT64_DOUBLE, true), + GREATER_DOUBLE_INT64(GreaterOverload.GREATER_DOUBLE_INT64, true), + GREATER_UINT64_DOUBLE(GreaterOverload.GREATER_UINT64_DOUBLE, true), + GREATER_DOUBLE_UINT64(GreaterOverload.GREATER_DOUBLE_UINT64, true), + GREATER_EQUALS_BOOL(GreaterEqualsOverload.GREATER_EQUALS_BOOL, false), + GREATER_EQUALS_BYTES(GreaterEqualsOverload.GREATER_EQUALS_BYTES, false), + GREATER_EQUALS_DOUBLE(GreaterEqualsOverload.GREATER_EQUALS_DOUBLE, false), + GREATER_EQUALS_DURATION(GreaterEqualsOverload.GREATER_EQUALS_DURATION, false), + GREATER_EQUALS_INT64(GreaterEqualsOverload.GREATER_EQUALS_INT64, false), + GREATER_EQUALS_STRING(GreaterEqualsOverload.GREATER_EQUALS_STRING, false), + GREATER_EQUALS_TIMESTAMP(GreaterEqualsOverload.GREATER_EQUALS_TIMESTAMP, false), + GREATER_EQUALS_UINT64(GreaterEqualsOverload.GREATER_EQUALS_UINT64, false), + GREATER_EQUALS_INT64_UINT64(GreaterEqualsOverload.GREATER_EQUALS_INT64_UINT64, true), + GREATER_EQUALS_UINT64_INT64(GreaterEqualsOverload.GREATER_EQUALS_UINT64_INT64, true), + GREATER_EQUALS_INT64_DOUBLE(GreaterEqualsOverload.GREATER_EQUALS_INT64_DOUBLE, true), + GREATER_EQUALS_DOUBLE_INT64(GreaterEqualsOverload.GREATER_EQUALS_DOUBLE_INT64, true), + GREATER_EQUALS_UINT64_DOUBLE(GreaterEqualsOverload.GREATER_EQUALS_UINT64_DOUBLE, true), + GREATER_EQUALS_DOUBLE_UINT64(GreaterEqualsOverload.GREATER_EQUALS_DOUBLE_UINT64, true); + + private final CelStandardOverload standardOverload; private final boolean isHeterogeneousComparison; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - Comparison(FunctionBindingCreator bindingCreator, boolean isHeterogeneousComparison) { - this.bindingCreator = bindingCreator; + Comparison(CelStandardOverload standardOverload, boolean isHeterogeneousComparison) { + this.standardOverload = standardOverload; this.isHeterogeneousComparison = isHeterogeneousComparison; } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/AddOperator.java b/runtime/src/main/java/dev/cel/runtime/standard/AddOperator.java index 42386a942..783ddd81a 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/AddOperator.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/AddOperator.java @@ -156,16 +156,16 @@ public enum AddOverload implements CelStandardOverload { (celOptions, runtimeEquality) -> CelFunctionBinding.from("add_list", List.class, List.class, RuntimeHelpers::concat)); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - AddOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + AddOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/BoolFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/BoolFunction.java index 519755d18..5d9d3919c 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/BoolFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/BoolFunction.java @@ -72,17 +72,17 @@ public enum BoolOverload implements CelStandardOverload { } })); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; ; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - BoolOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + BoolOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/BytesFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/BytesFunction.java index d9b4babd5..e2a5230ce 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/BytesFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/BytesFunction.java @@ -61,17 +61,17 @@ public enum BytesOverload implements CelStandardOverload { }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; ; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - BytesOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + BytesOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/CelStandardOverload.java b/runtime/src/main/java/dev/cel/runtime/standard/CelStandardOverload.java index 7c6599737..aad6e468b 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/CelStandardOverload.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/CelStandardOverload.java @@ -25,15 +25,9 @@ * overload. */ @Immutable +@FunctionalInterface public interface CelStandardOverload { /** Constructs a new {@link CelFunctionBinding} for this CEL standard overload. */ CelFunctionBinding newFunctionBinding(CelOptions celOptions, RuntimeEquality runtimeEquality); - - /** TODO: To be removed in the upcoming CL */ - @FunctionalInterface - @Immutable - interface FunctionBindingCreator { - CelFunctionBinding create(CelOptions celOptions, RuntimeEquality runtimeEquality); - } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/ContainsFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/ContainsFunction.java index fb4aa37f1..21f8390b9 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/ContainsFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/ContainsFunction.java @@ -44,16 +44,16 @@ public enum ContainsOverload implements CelStandardOverload { "contains_string", String.class, String.class, String::contains)), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - ContainsOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + ContainsOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/DivideOperator.java b/runtime/src/main/java/dev/cel/runtime/standard/DivideOperator.java index 23556d0f1..b9fdad33c 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/DivideOperator.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/DivideOperator.java @@ -76,16 +76,16 @@ public enum DivideOverload implements CelStandardOverload { (Long x, Long y) -> RuntimeHelpers.uint64Divide(x, y, celOptions)); } }); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - DivideOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + DivideOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/DoubleFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/DoubleFunction.java index 1569a0c0b..508df1983 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/DoubleFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/DoubleFunction.java @@ -73,16 +73,16 @@ public enum DoubleOverload implements CelStandardOverload { }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - DoubleOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + DoubleOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/DurationFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/DurationFunction.java index b17a9871e..72f96f785 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/DurationFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/DurationFunction.java @@ -74,16 +74,16 @@ public enum DurationOverload implements CelStandardOverload { })), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - DurationOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + DurationOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/DynFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/DynFunction.java index bfaada85c..d3cb34de9 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/DynFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/DynFunction.java @@ -43,16 +43,16 @@ public enum DynOverload implements CelStandardOverload { (celOptions, runtimeEquality) -> CelFunctionBinding.from("to_dyn", Object.class, (Object arg) -> arg)); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - DynOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + DynOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/EndsWithFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/EndsWithFunction.java index 048807a10..eeda546fe 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/EndsWithFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/EndsWithFunction.java @@ -44,17 +44,17 @@ public enum EndsWithOverload implements CelStandardOverload { "ends_with_string", String.class, String.class, String::endsWith)), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; ; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - EndsWithOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + EndsWithOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/EqualsOperator.java b/runtime/src/main/java/dev/cel/runtime/standard/EqualsOperator.java index 192ffd749..ae78decbd 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/EqualsOperator.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/EqualsOperator.java @@ -44,16 +44,16 @@ public enum EqualsOverload implements CelStandardOverload { "equals", Object.class, Object.class, runtimeEquality::objectEquals)), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - EqualsOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + EqualsOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/GetDateFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/GetDateFunction.java index 1c1b7ffd4..04e046062 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/GetDateFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/GetDateFunction.java @@ -75,16 +75,16 @@ public enum GetDateOverload implements CelStandardOverload { }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - GetDateOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + GetDateOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/GetDayOfMonthFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/GetDayOfMonthFunction.java index 1efa43620..b6f146aa9 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/GetDayOfMonthFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/GetDayOfMonthFunction.java @@ -76,16 +76,16 @@ public enum GetDayOfMonthOverload implements CelStandardOverload { } }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - GetDayOfMonthOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + GetDayOfMonthOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/GetDayOfWeekFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/GetDayOfWeekFunction.java index 4fa7000eb..cede6c1e1 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/GetDayOfWeekFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/GetDayOfWeekFunction.java @@ -92,16 +92,16 @@ public enum GetDayOfWeekOverload implements CelStandardOverload { }); } }); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - GetDayOfWeekOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + GetDayOfWeekOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/GetDayOfYearFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/GetDayOfYearFunction.java index c74a85c1c..966c70bc6 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/GetDayOfYearFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/GetDayOfYearFunction.java @@ -77,16 +77,16 @@ public enum GetDayOfYearOverload implements CelStandardOverload { }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - GetDayOfYearOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + GetDayOfYearOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/GetFullYearFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/GetFullYearFunction.java index ca816eb80..a91fffb72 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/GetFullYearFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/GetFullYearFunction.java @@ -76,16 +76,16 @@ public enum GetFullYearOverload implements CelStandardOverload { }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - GetFullYearOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + GetFullYearOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/GetHoursFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/GetHoursFunction.java index 28d559248..94fb6391e 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/GetHoursFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/GetHoursFunction.java @@ -87,16 +87,16 @@ public enum GetHoursOverload implements CelStandardOverload { }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - GetHoursOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + GetHoursOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/GetMillisecondsFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/GetMillisecondsFunction.java index 53ec92a82..672226eaf 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/GetMillisecondsFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/GetMillisecondsFunction.java @@ -98,16 +98,16 @@ public enum GetMillisecondsOverload implements CelStandardOverload { } }); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - GetMillisecondsOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + GetMillisecondsOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/GetMinutesFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/GetMinutesFunction.java index 62ee130b6..5f75d14ef 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/GetMinutesFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/GetMinutesFunction.java @@ -88,16 +88,16 @@ public enum GetMinutesOverload implements CelStandardOverload { }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - GetMinutesOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + GetMinutesOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/GetMonthFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/GetMonthFunction.java index 99770e69f..dc4e66889 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/GetMonthFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/GetMonthFunction.java @@ -75,16 +75,16 @@ public enum GetMonthOverload implements CelStandardOverload { }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - GetMonthOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + GetMonthOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/GetSecondsFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/GetSecondsFunction.java index f0357990b..70fe96ec4 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/GetSecondsFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/GetSecondsFunction.java @@ -100,16 +100,16 @@ public enum GetSecondsOverload implements CelStandardOverload { }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - GetSecondsOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + GetSecondsOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/GreaterEqualsOperator.java b/runtime/src/main/java/dev/cel/runtime/standard/GreaterEqualsOperator.java index 03be9c41b..be41e0f5f 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/GreaterEqualsOperator.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/GreaterEqualsOperator.java @@ -183,16 +183,16 @@ public enum GreaterEqualsOverload implements CelStandardOverload { UnsignedLong.class, (Double x, UnsignedLong y) -> ComparisonFunctions.compareDoubleUint(x, y) >= 0)); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - GreaterEqualsOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + GreaterEqualsOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/GreaterOperator.java b/runtime/src/main/java/dev/cel/runtime/standard/GreaterOperator.java index f0db202a8..21b59eebb 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/GreaterOperator.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/GreaterOperator.java @@ -176,16 +176,16 @@ public enum GreaterOverload implements CelStandardOverload { (Double x, UnsignedLong y) -> ComparisonFunctions.compareDoubleUint(x, y) == 1)), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - GreaterOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + GreaterOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/InOperator.java b/runtime/src/main/java/dev/cel/runtime/standard/InOperator.java index 9b4e3986c..9a2c99f43 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/InOperator.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/InOperator.java @@ -56,16 +56,16 @@ public enum InOverload implements CelStandardOverload { Map.class, (Object key, Map map) -> runtimeEquality.inMap(map, key))); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - InOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + InOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/IndexOperator.java b/runtime/src/main/java/dev/cel/runtime/standard/IndexOperator.java index f94fd2807..d1b88a88f 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/IndexOperator.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/IndexOperator.java @@ -51,16 +51,16 @@ public enum IndexOverload implements CelStandardOverload { CelFunctionBinding.from( "index_map", Map.class, Object.class, runtimeEquality::indexMap)); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - IndexOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + IndexOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/IntFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/IntFunction.java index 17ad835cb..fda307a9d 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/IntFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/IntFunction.java @@ -116,16 +116,16 @@ public enum IntOverload implements CelStandardOverload { }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - IntOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + IntOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/LessEqualsOperator.java b/runtime/src/main/java/dev/cel/runtime/standard/LessEqualsOperator.java index 8ff6f5248..e09fcce5e 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/LessEqualsOperator.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/LessEqualsOperator.java @@ -180,16 +180,16 @@ public enum LessEqualsOverload implements CelStandardOverload { (Double x, UnsignedLong y) -> ComparisonFunctions.compareDoubleUint(x, y) <= 0)), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - LessEqualsOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + LessEqualsOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/LessOperator.java b/runtime/src/main/java/dev/cel/runtime/standard/LessOperator.java index d348555b7..4afbc20a2 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/LessOperator.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/LessOperator.java @@ -176,16 +176,16 @@ public enum LessOverload implements CelStandardOverload { }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - LessOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + LessOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/LogicalNotOperator.java b/runtime/src/main/java/dev/cel/runtime/standard/LogicalNotOperator.java index c11539a81..a4be6385b 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/LogicalNotOperator.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/LogicalNotOperator.java @@ -43,16 +43,16 @@ public enum LogicalNotOverload implements CelStandardOverload { (celOptions, runtimeEquality) -> CelFunctionBinding.from("logical_not", Boolean.class, (Boolean x) -> !x)); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - LogicalNotOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + LogicalNotOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/MatchesFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/MatchesFunction.java index 1b0891b1a..7c24f65a2 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/MatchesFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/MatchesFunction.java @@ -70,16 +70,16 @@ public enum MatchesOverload implements CelStandardOverload { })), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - MatchesOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + MatchesOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/ModuloOperator.java b/runtime/src/main/java/dev/cel/runtime/standard/ModuloOperator.java index 716db43b7..e7246851c 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/ModuloOperator.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/ModuloOperator.java @@ -71,16 +71,16 @@ public enum ModuloOverload implements CelStandardOverload { }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - ModuloOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + ModuloOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/MultiplyOperator.java b/runtime/src/main/java/dev/cel/runtime/standard/MultiplyOperator.java index 46472fdd6..7e9e2f352 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/MultiplyOperator.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/MultiplyOperator.java @@ -89,16 +89,16 @@ public enum MultiplyOverload implements CelStandardOverload { } }); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - MultiplyOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + MultiplyOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/NegateOperator.java b/runtime/src/main/java/dev/cel/runtime/standard/NegateOperator.java index dd30c557e..2e3f094f5 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/NegateOperator.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/NegateOperator.java @@ -58,16 +58,16 @@ public enum NegateOverload implements CelStandardOverload { (celOptions, runtimeEquality) -> CelFunctionBinding.from("negate_double", Double.class, (Double x) -> -x)); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - NegateOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + NegateOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/NotEqualsOperator.java b/runtime/src/main/java/dev/cel/runtime/standard/NotEqualsOperator.java index 886047e98..5a0475f29 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/NotEqualsOperator.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/NotEqualsOperator.java @@ -46,16 +46,16 @@ public enum NotEqualsOverload implements CelStandardOverload { Object.class, (Object x, Object y) -> !runtimeEquality.objectEquals(x, y))); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - NotEqualsOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + NotEqualsOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/SizeFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/SizeFunction.java index 206e4bdd4..9f79605ed 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/SizeFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/SizeFunction.java @@ -84,16 +84,16 @@ public enum SizeOverload implements CelStandardOverload { (celOptions, runtimeEquality) -> CelFunctionBinding.from("map_size", Map.class, (Map map1) -> (long) map1.size())); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - SizeOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + SizeOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/StartsWithFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/StartsWithFunction.java index 3a73a9f35..6626d6912 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/StartsWithFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/StartsWithFunction.java @@ -44,16 +44,16 @@ public enum StartsWithOverload implements CelStandardOverload { CelFunctionBinding.from( "starts_with_string", String.class, String.class, String::startsWith)); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - StartsWithOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + StartsWithOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/StringFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/StringFunction.java index aa1935876..c491bfe76 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/StringFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/StringFunction.java @@ -120,16 +120,16 @@ public enum StringOverload implements CelStandardOverload { } }); - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - StringOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + StringOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/SubtractOperator.java b/runtime/src/main/java/dev/cel/runtime/standard/SubtractOperator.java index a5d1359cc..4b0ecd3ae 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/SubtractOperator.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/SubtractOperator.java @@ -143,16 +143,16 @@ public enum SubtractOverload implements CelStandardOverload { }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - SubtractOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + SubtractOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/TimestampFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/TimestampFunction.java index 76d2e5b84..34d3a1dc0 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/TimestampFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/TimestampFunction.java @@ -89,16 +89,16 @@ public enum TimestampOverload implements CelStandardOverload { }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - TimestampOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + TimestampOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } } diff --git a/runtime/src/main/java/dev/cel/runtime/standard/UintFunction.java b/runtime/src/main/java/dev/cel/runtime/standard/UintFunction.java index a05258521..89424e7fc 100644 --- a/runtime/src/main/java/dev/cel/runtime/standard/UintFunction.java +++ b/runtime/src/main/java/dev/cel/runtime/standard/UintFunction.java @@ -144,16 +144,16 @@ public enum UintOverload implements CelStandardOverload { }), ; - private final FunctionBindingCreator bindingCreator; + private final CelStandardOverload standardOverload; @Override public CelFunctionBinding newFunctionBinding( CelOptions celOptions, RuntimeEquality runtimeEquality) { - return bindingCreator.create(celOptions, runtimeEquality); + return standardOverload.newFunctionBinding(celOptions, runtimeEquality); } - UintOverload(FunctionBindingCreator bindingCreator) { - this.bindingCreator = bindingCreator; + UintOverload(CelStandardOverload standardOverload) { + this.standardOverload = standardOverload; } }