ESQL: TO_LOWER process all values (#124676)

Make `TO_LOWER` and `TO_UPPER` process all values it received.

This is quite large because it borrows a lot of code from the regular
evaluator generator to generate conversions so we can use the Locale.
That change propagates to the order of some parameters and to the
`toString` and a few more places.

Closes #124002
This commit is contained in:
Nik Everett 2025-03-13 11:00:25 -04:00 committed by GitHub
parent d81c7995a7
commit 1e25a54ac5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
124 changed files with 2103 additions and 1135 deletions

View file

@ -0,0 +1,6 @@
pr: 124676
summary: TO_LOWER processes all values
area: ES|QL
type: bug
issues:
- 124002

View file

@ -23,7 +23,6 @@ import javax.lang.model.element.TypeElement;
import javax.lang.model.type.TypeMirror; import javax.lang.model.type.TypeMirror;
import javax.lang.model.util.Elements; import javax.lang.model.util.Elements;
import static org.elasticsearch.compute.gen.Methods.appendMethod;
import static org.elasticsearch.compute.gen.Methods.buildFromFactory; import static org.elasticsearch.compute.gen.Methods.buildFromFactory;
import static org.elasticsearch.compute.gen.Methods.getMethod; import static org.elasticsearch.compute.gen.Methods.getMethod;
import static org.elasticsearch.compute.gen.Types.ABSTRACT_CONVERT_FUNCTION_EVALUATOR; import static org.elasticsearch.compute.gen.Types.ABSTRACT_CONVERT_FUNCTION_EVALUATOR;
@ -41,27 +40,34 @@ import static org.elasticsearch.compute.gen.Types.vectorType;
public class ConvertEvaluatorImplementer { public class ConvertEvaluatorImplementer {
private final TypeElement declarationType; private final TypeElement declarationType;
private final ExecutableElement processFunction; private final EvaluatorImplementer.ProcessFunction processFunction;
private final String extraName; private final String extraName;
private final ClassName implementation; private final ClassName implementation;
private final TypeName argumentType; private final TypeName argumentType;
private final TypeName resultType;
private final List<TypeMirror> warnExceptions; private final List<TypeMirror> warnExceptions;
public ConvertEvaluatorImplementer( public ConvertEvaluatorImplementer(
Elements elements, Elements elements,
javax.lang.model.util.Types types,
ExecutableElement processFunction, ExecutableElement processFunction,
String extraName, String extraName,
List<TypeMirror> warnExceptions List<TypeMirror> warnExceptions
) { ) {
this.declarationType = (TypeElement) processFunction.getEnclosingElement(); this.declarationType = (TypeElement) processFunction.getEnclosingElement();
this.processFunction = processFunction; this.processFunction = new EvaluatorImplementer.ProcessFunction(types, processFunction, warnExceptions);
if (processFunction.getParameters().size() != 1) {
throw new IllegalArgumentException("processing function should have exactly one parameter"); if (this.processFunction.args.getFirst() instanceof EvaluatorImplementer.StandardProcessFunctionArg == false) {
throw new IllegalArgumentException("first argument must be the field to process");
} }
for (int a = 1; a < this.processFunction.args.size(); a++) {
if (this.processFunction.args.get(a) instanceof EvaluatorImplementer.FixedProcessFunctionArg == false) {
throw new IllegalArgumentException("fixed function args supported after the first");
// TODO support more function types when we need them
}
}
this.extraName = extraName; this.extraName = extraName;
this.argumentType = TypeName.get(processFunction.getParameters().get(0).asType()); this.argumentType = TypeName.get(processFunction.getParameters().get(0).asType());
this.resultType = TypeName.get(processFunction.getReturnType());
this.warnExceptions = warnExceptions; this.warnExceptions = warnExceptions;
this.implementation = ClassName.get( this.implementation = ClassName.get(
@ -87,29 +93,36 @@ public class ConvertEvaluatorImplementer {
builder.addModifiers(Modifier.PUBLIC, Modifier.FINAL); builder.addModifiers(Modifier.PUBLIC, Modifier.FINAL);
builder.superclass(ABSTRACT_CONVERT_FUNCTION_EVALUATOR); builder.superclass(ABSTRACT_CONVERT_FUNCTION_EVALUATOR);
for (EvaluatorImplementer.ProcessFunctionArg a : processFunction.args) {
a.declareField(builder);
}
builder.addMethod(ctor()); builder.addMethod(ctor());
builder.addMethod(name()); builder.addMethod(next());
builder.addMethod(evalVector()); builder.addMethod(evalVector());
builder.addMethod(evalValue(true)); builder.addMethod(evalValue(true));
builder.addMethod(evalBlock()); builder.addMethod(evalBlock());
builder.addMethod(evalValue(false)); builder.addMethod(evalValue(false));
builder.addMethod(processFunction.toStringMethod(implementation));
builder.addMethod(processFunction.close());
builder.addType(factory()); builder.addType(factory());
return builder.build(); return builder.build();
} }
private MethodSpec ctor() { private MethodSpec ctor() {
MethodSpec.Builder builder = MethodSpec.constructorBuilder().addModifiers(Modifier.PUBLIC); MethodSpec.Builder builder = MethodSpec.constructorBuilder().addModifiers(Modifier.PUBLIC);
builder.addParameter(EXPRESSION_EVALUATOR, "field");
builder.addParameter(SOURCE, "source"); builder.addParameter(SOURCE, "source");
builder.addStatement("super(driverContext, source)");
for (EvaluatorImplementer.ProcessFunctionArg a : processFunction.args) {
a.implementCtor(builder);
}
builder.addParameter(DRIVER_CONTEXT, "driverContext"); builder.addParameter(DRIVER_CONTEXT, "driverContext");
builder.addStatement("super(driverContext, field, source)");
return builder.build(); return builder.build();
} }
private MethodSpec name() { private MethodSpec next() {
MethodSpec.Builder builder = MethodSpec.methodBuilder("name").addModifiers(Modifier.PUBLIC); MethodSpec.Builder builder = MethodSpec.methodBuilder("next").addAnnotation(Override.class).addModifiers(Modifier.PUBLIC);
builder.addAnnotation(Override.class).returns(String.class); builder.returns(EXPRESSION_EVALUATOR);
builder.addStatement("return $S", declarationType.getSimpleName() + extraName); builder.addStatement("return $N", ((EvaluatorImplementer.StandardProcessFunctionArg) processFunction.args.getFirst()).name());
return builder.build(); return builder.build();
} }
@ -129,7 +142,7 @@ public class ConvertEvaluatorImplementer {
builder.beginControlFlow("if (vector.isConstant())"); builder.beginControlFlow("if (vector.isConstant())");
{ {
catchingWarnExceptions(builder, () -> { catchingWarnExceptions(builder, () -> {
var constVectType = blockType(resultType); var constVectType = processFunction.resultDataType(true);
builder.addStatement( builder.addStatement(
"return driverContext.blockFactory().newConstant$TWith($N, positionCount)", "return driverContext.blockFactory().newConstant$TWith($N, positionCount)",
constVectType, constVectType,
@ -139,7 +152,7 @@ public class ConvertEvaluatorImplementer {
} }
builder.endControlFlow(); builder.endControlFlow();
ClassName resultBuilderType = builderType(blockType(resultType)); ClassName resultBuilderType = builderType(processFunction.resultDataType(true));
builder.beginControlFlow( builder.beginControlFlow(
"try ($T builder = driverContext.blockFactory().$L(positionCount))", "try ($T builder = driverContext.blockFactory().$L(positionCount))",
resultBuilderType, resultBuilderType,
@ -150,7 +163,11 @@ public class ConvertEvaluatorImplementer {
{ {
catchingWarnExceptions( catchingWarnExceptions(
builder, builder,
() -> builder.addStatement("builder.$L($N)", appendMethod(resultType), evalValueCall("vector", "p", scratchPadName)), () -> builder.addStatement(
"builder.$L($N)",
processFunction.appendMethod(),
evalValueCall("vector", "p", scratchPadName)
),
() -> builder.addStatement("builder.appendNull()") () -> builder.addStatement("builder.appendNull()")
); );
} }
@ -185,7 +202,7 @@ public class ConvertEvaluatorImplementer {
TypeName blockType = blockType(argumentType); TypeName blockType = blockType(argumentType);
builder.addStatement("$T block = ($T) b", blockType, blockType); builder.addStatement("$T block = ($T) b", blockType, blockType);
builder.addStatement("int positionCount = block.getPositionCount()"); builder.addStatement("int positionCount = block.getPositionCount()");
TypeName resultBuilderType = builderType(blockType(resultType)); TypeName resultBuilderType = builderType(processFunction.resultDataType(true));
builder.beginControlFlow( builder.beginControlFlow(
"try ($T builder = driverContext.blockFactory().$L(positionCount))", "try ($T builder = driverContext.blockFactory().$L(positionCount))",
resultBuilderType, resultBuilderType,
@ -196,7 +213,7 @@ public class ConvertEvaluatorImplementer {
builder.addStatement("BytesRef $N = new BytesRef()", scratchPadName); builder.addStatement("BytesRef $N = new BytesRef()", scratchPadName);
} }
String appendMethod = appendMethod(resultType); String appendMethod = processFunction.appendMethod();
builder.beginControlFlow("for (int p = 0; p < positionCount; p++)"); builder.beginControlFlow("for (int p = 0; p < positionCount; p++)");
{ {
builder.addStatement("int valueCount = block.getValueCount(p)"); builder.addStatement("int valueCount = block.getValueCount(p)");
@ -204,11 +221,10 @@ public class ConvertEvaluatorImplementer {
builder.addStatement("int end = start + valueCount"); builder.addStatement("int end = start + valueCount");
builder.addStatement("boolean positionOpened = false"); builder.addStatement("boolean positionOpened = false");
builder.addStatement("boolean valuesAppended = false"); builder.addStatement("boolean valuesAppended = false");
// builder.addStatement("builder.beginPositionEntry()");
builder.beginControlFlow("for (int i = start; i < end; i++)"); builder.beginControlFlow("for (int i = start; i < end; i++)");
{ {
catchingWarnExceptions(builder, () -> { catchingWarnExceptions(builder, () -> {
builder.addStatement("$T value = $N", resultType, evalValueCall("block", "i", scratchPadName)); builder.addStatement("$T value = $N", processFunction.returnType(), evalValueCall("block", "i", scratchPadName));
builder.beginControlFlow("if (positionOpened == false && valueCount > 1)"); builder.beginControlFlow("if (positionOpened == false && valueCount > 1)");
{ {
builder.addStatement("builder.beginPositionEntry()"); builder.addStatement("builder.beginPositionEntry()");
@ -253,8 +269,8 @@ public class ConvertEvaluatorImplementer {
private MethodSpec evalValue(boolean forVector) { private MethodSpec evalValue(boolean forVector) {
MethodSpec.Builder builder = MethodSpec.methodBuilder("evalValue") MethodSpec.Builder builder = MethodSpec.methodBuilder("evalValue")
.addModifiers(Modifier.PRIVATE, Modifier.STATIC) .addModifiers(Modifier.PRIVATE)
.returns(resultType); .returns(processFunction.returnType());
if (forVector) { if (forVector) {
builder.addParameter(vectorType(argumentType), "container"); builder.addParameter(vectorType(argumentType), "container");
@ -269,8 +285,17 @@ public class ConvertEvaluatorImplementer {
builder.addStatement("$T value = container.$N(index)", argumentType, getMethod(argumentType)); builder.addStatement("$T value = container.$N(index)", argumentType, getMethod(argumentType));
} }
builder.addStatement("return $T.$N(value)", declarationType, processFunction.getSimpleName()); StringBuilder pattern = new StringBuilder();
List<Object> args = new ArrayList<>();
pattern.append("return $T.$N(value");
args.add(declarationType);
args.add(processFunction.function.getSimpleName());
for (int a = 1; a < processFunction.args.size(); a++) {
pattern.append(", ");
processFunction.args.get(a).buildInvocation(pattern, args, false /* block style parameter should be unused */);
}
pattern.append(")");
builder.addStatement(pattern.toString(), args.toArray());
return builder.build(); return builder.build();
} }
@ -280,42 +305,11 @@ public class ConvertEvaluatorImplementer {
builder.addModifiers(Modifier.PUBLIC, Modifier.STATIC); builder.addModifiers(Modifier.PUBLIC, Modifier.STATIC);
builder.addField(SOURCE, "source", Modifier.PRIVATE, Modifier.FINAL); builder.addField(SOURCE, "source", Modifier.PRIVATE, Modifier.FINAL);
builder.addField(EXPRESSION_EVALUATOR_FACTORY, "field", Modifier.PRIVATE, Modifier.FINAL); processFunction.args.forEach(a -> a.declareFactoryField(builder));
builder.addMethod(factoryCtor()); builder.addMethod(processFunction.factoryCtor());
builder.addMethod(factoryGet()); builder.addMethod(processFunction.factoryGet(implementation));
builder.addMethod(factoryToString()); builder.addMethod(processFunction.toStringMethod(implementation));
return builder.build();
}
private MethodSpec factoryCtor() {
MethodSpec.Builder builder = MethodSpec.constructorBuilder().addModifiers(Modifier.PUBLIC);
builder.addParameter(EXPRESSION_EVALUATOR_FACTORY, "field");
builder.addParameter(SOURCE, "source");
builder.addStatement("this.field = field");
builder.addStatement("this.source = source");
return builder.build();
}
private MethodSpec factoryGet() {
MethodSpec.Builder builder = MethodSpec.methodBuilder("get").addAnnotation(Override.class);
builder.addModifiers(Modifier.PUBLIC);
builder.addParameter(DRIVER_CONTEXT, "context");
builder.returns(implementation);
List<String> args = new ArrayList<>();
args.add("field.get(context)");
args.add("source");
args.add("context");
builder.addStatement("return new $T($L)", implementation, args.stream().collect(Collectors.joining(", ")));
return builder.build();
}
private MethodSpec factoryToString() {
MethodSpec.Builder builder = MethodSpec.methodBuilder("toString").addAnnotation(Override.class);
builder.addModifiers(Modifier.PUBLIC);
builder.returns(String.class);
builder.addStatement("return $S + field + $S", declarationType.getSimpleName() + extraName + "Evaluator[field=", "]");
return builder.build(); return builder.build();
} }
} }

View file

@ -21,6 +21,7 @@ import org.elasticsearch.compute.ann.Fixed.Scope;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Objects;
import java.util.function.Function; import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -33,7 +34,6 @@ import javax.lang.model.type.TypeKind;
import javax.lang.model.type.TypeMirror; import javax.lang.model.type.TypeMirror;
import javax.lang.model.util.Elements; import javax.lang.model.util.Elements;
import static org.elasticsearch.compute.gen.Methods.appendMethod;
import static org.elasticsearch.compute.gen.Methods.buildFromFactory; import static org.elasticsearch.compute.gen.Methods.buildFromFactory;
import static org.elasticsearch.compute.gen.Methods.getMethod; import static org.elasticsearch.compute.gen.Methods.getMethod;
import static org.elasticsearch.compute.gen.Types.BLOCK; import static org.elasticsearch.compute.gen.Types.BLOCK;
@ -71,7 +71,7 @@ public class EvaluatorImplementer {
List<TypeMirror> warnExceptions List<TypeMirror> warnExceptions
) { ) {
this.declarationType = (TypeElement) processFunction.getEnclosingElement(); this.declarationType = (TypeElement) processFunction.getEnclosingElement();
this.processFunction = new ProcessFunction(elements, types, processFunction, warnExceptions); this.processFunction = new ProcessFunction(types, processFunction, warnExceptions);
this.implementation = ClassName.get( this.implementation = ClassName.get(
elements.getPackageOf(declarationType).toString(), elements.getPackageOf(declarationType).toString(),
@ -99,7 +99,7 @@ public class EvaluatorImplementer {
builder.addType(factory()); builder.addType(factory());
builder.addField(SOURCE, "source", Modifier.PRIVATE, Modifier.FINAL); builder.addField(SOURCE, "source", Modifier.PRIVATE, Modifier.FINAL);
processFunction.args.stream().forEach(a -> a.declareField(builder)); processFunction.args.forEach(a -> a.declareField(builder));
builder.addField(DRIVER_CONTEXT, "driverContext", Modifier.PRIVATE, Modifier.FINAL); builder.addField(DRIVER_CONTEXT, "driverContext", Modifier.PRIVATE, Modifier.FINAL);
builder.addField(WARNINGS, "warnings", Modifier.PRIVATE); builder.addField(WARNINGS, "warnings", Modifier.PRIVATE);
@ -117,8 +117,8 @@ public class EvaluatorImplementer {
} }
builder.addMethod(realEval(false)); builder.addMethod(realEval(false));
} }
builder.addMethod(toStringMethod()); builder.addMethod(processFunction.toStringMethod(implementation));
builder.addMethod(close()); builder.addMethod(processFunction.close());
builder.addMethod(warnings()); builder.addMethod(warnings());
return builder.build(); return builder.build();
} }
@ -238,7 +238,7 @@ public class EvaluatorImplementer {
String builtPattern; String builtPattern;
if (processFunction.builderArg == null) { if (processFunction.builderArg == null) {
builtPattern = vectorize ? "result.$L(p, " + pattern + ")" : "result.$L(" + pattern + ")"; builtPattern = vectorize ? "result.$L(p, " + pattern + ")" : "result.$L(" + pattern + ")";
args.add(0, appendMethod(resultDataType)); args.add(0, processFunction.appendMethod());
} else { } else {
builtPattern = pattern.toString(); builtPattern = pattern.toString();
} }
@ -290,35 +290,6 @@ public class EvaluatorImplementer {
builder.endControlFlow(); builder.endControlFlow();
} }
private MethodSpec toStringMethod() {
MethodSpec.Builder builder = MethodSpec.methodBuilder("toString").addAnnotation(Override.class);
builder.addModifiers(Modifier.PUBLIC).returns(String.class);
StringBuilder pattern = new StringBuilder();
List<Object> args = new ArrayList<>();
pattern.append("return $S");
args.add(implementation.simpleName() + "[");
processFunction.args.stream().forEach(a -> a.buildToStringInvocation(pattern, args, args.size() > 2 ? ", " : ""));
pattern.append(" + $S");
args.add("]");
builder.addStatement(pattern.toString(), args.toArray());
return builder.build();
}
private MethodSpec close() {
MethodSpec.Builder builder = MethodSpec.methodBuilder("close").addAnnotation(Override.class);
builder.addModifiers(Modifier.PUBLIC);
List<String> invocations = processFunction.args.stream().map(ProcessFunctionArg::closeInvocation).filter(s -> s != null).toList();
if (invocations.isEmpty() == false) {
builder.addStatement(
"$T.closeExpectNoException(" + invocations.stream().collect(Collectors.joining(", ")) + ")",
Types.RELEASABLES
);
}
return builder.build();
}
static MethodSpec warnings() { static MethodSpec warnings() {
MethodSpec.Builder builder = MethodSpec.methodBuilder("warnings"); MethodSpec.Builder builder = MethodSpec.methodBuilder("warnings");
builder.addModifiers(Modifier.PRIVATE).returns(WARNINGS); builder.addModifiers(Modifier.PRIVATE).returns(WARNINGS);
@ -343,42 +314,14 @@ public class EvaluatorImplementer {
builder.addField(SOURCE, "source", Modifier.PRIVATE, Modifier.FINAL); builder.addField(SOURCE, "source", Modifier.PRIVATE, Modifier.FINAL);
processFunction.args.stream().forEach(a -> a.declareFactoryField(builder)); processFunction.args.stream().forEach(a -> a.declareFactoryField(builder));
builder.addMethod(factoryCtor()); builder.addMethod(processFunction.factoryCtor());
builder.addMethod(factoryGet()); builder.addMethod(processFunction.factoryGet(implementation));
builder.addMethod(toStringMethod()); builder.addMethod(processFunction.toStringMethod(implementation));
return builder.build(); return builder.build();
} }
private MethodSpec factoryCtor() { interface ProcessFunctionArg {
MethodSpec.Builder builder = MethodSpec.constructorBuilder().addModifiers(Modifier.PUBLIC);
builder.addParameter(SOURCE, "source");
builder.addStatement("this.source = source");
processFunction.args.stream().forEach(a -> a.implementFactoryCtor(builder));
return builder.build();
}
private MethodSpec factoryGet() {
MethodSpec.Builder builder = MethodSpec.methodBuilder("get").addAnnotation(Override.class);
builder.addModifiers(Modifier.PUBLIC);
builder.addParameter(DRIVER_CONTEXT, "context");
builder.returns(implementation);
List<String> args = new ArrayList<>();
args.add("source");
for (ProcessFunctionArg arg : processFunction.args) {
String invocation = arg.factoryInvocation(builder);
if (invocation != null) {
args.add(invocation);
}
}
args.add("context");
builder.addStatement("return new $T($L)", implementation, args.stream().collect(Collectors.joining(", ")));
return builder.build();
}
private interface ProcessFunctionArg {
/** /**
* Type containing the actual data for a page of values for this field. Usually a * Type containing the actual data for a page of values for this field. Usually a
* Block or Vector, but for fixed fields will be the original fixed type. * Block or Vector, but for fixed fields will be the original fixed type.
@ -470,7 +413,7 @@ public class EvaluatorImplementer {
String closeInvocation(); String closeInvocation();
} }
private record StandardProcessFunctionArg(TypeName type, String name) implements ProcessFunctionArg { record StandardProcessFunctionArg(TypeName type, String name) implements ProcessFunctionArg {
@Override @Override
public TypeName dataType(boolean blockStyle) { public TypeName dataType(boolean blockStyle) {
if (blockStyle) { if (blockStyle) {
@ -726,7 +669,7 @@ public class EvaluatorImplementer {
} }
} }
private record FixedProcessFunctionArg(TypeName type, String name, boolean includeInToString, Scope scope, boolean releasable) record FixedProcessFunctionArg(TypeName type, String name, boolean includeInToString, Scope scope, boolean releasable)
implements implements
ProcessFunctionArg { ProcessFunctionArg {
@Override @Override
@ -999,20 +942,15 @@ public class EvaluatorImplementer {
} }
} }
private static class ProcessFunction { static class ProcessFunction {
private final ExecutableElement function; final ExecutableElement function;
private final List<ProcessFunctionArg> args; final List<ProcessFunctionArg> args;
private final BuilderProcessFunctionArg builderArg; private final BuilderProcessFunctionArg builderArg;
private final List<TypeMirror> warnExceptions; private final List<TypeMirror> warnExceptions;
private boolean hasBlockType; private boolean hasBlockType;
private ProcessFunction( ProcessFunction(javax.lang.model.util.Types types, ExecutableElement function, List<TypeMirror> warnExceptions) {
Elements elements,
javax.lang.model.util.Types types,
ExecutableElement function,
List<TypeMirror> warnExceptions
) {
this.function = function; this.function = function;
args = new ArrayList<>(); args = new ArrayList<>();
BuilderProcessFunctionArg builderArg = null; BuilderProcessFunctionArg builderArg = null;
@ -1063,12 +1001,89 @@ public class EvaluatorImplementer {
this.warnExceptions = warnExceptions; this.warnExceptions = warnExceptions;
} }
private ClassName resultDataType(boolean blockStyle) { TypeName returnType() {
return TypeName.get(function.getReturnType());
}
ClassName resultDataType(boolean blockStyle) {
if (builderArg != null) { if (builderArg != null) {
return builderArg.type.enclosingClassName(); return builderArg.type.enclosingClassName();
} }
boolean useBlockStyle = blockStyle || warnExceptions.isEmpty() == false; boolean useBlockStyle = blockStyle || warnExceptions.isEmpty() == false;
return useBlockStyle ? blockType(TypeName.get(function.getReturnType())) : vectorType(TypeName.get(function.getReturnType())); return useBlockStyle ? blockType(returnType()) : vectorType(returnType());
}
String appendMethod() {
return Methods.appendMethod(returnType());
}
@Override
public String toString() {
return "ProcessFunction{"
+ "function="
+ function
+ ", args="
+ args
+ ", builderArg="
+ builderArg
+ ", warnExceptions="
+ warnExceptions
+ ", hasBlockType="
+ hasBlockType
+ '}';
}
MethodSpec toStringMethod(ClassName implementation) {
MethodSpec.Builder builder = MethodSpec.methodBuilder("toString").addAnnotation(Override.class);
builder.addModifiers(Modifier.PUBLIC).returns(String.class);
StringBuilder pattern = new StringBuilder();
List<Object> args = new ArrayList<>();
pattern.append("return $S");
args.add(implementation.simpleName() + "[");
this.args.forEach(a -> a.buildToStringInvocation(pattern, args, args.size() > 2 ? ", " : ""));
pattern.append(" + $S");
args.add("]");
builder.addStatement(pattern.toString(), args.toArray());
return builder.build();
}
MethodSpec factoryCtor() {
MethodSpec.Builder builder = MethodSpec.constructorBuilder().addModifiers(Modifier.PUBLIC);
builder.addParameter(SOURCE, "source");
builder.addStatement("this.source = source");
args.stream().forEach(a -> a.implementFactoryCtor(builder));
return builder.build();
}
MethodSpec factoryGet(ClassName implementation) {
MethodSpec.Builder builder = MethodSpec.methodBuilder("get").addAnnotation(Override.class);
builder.addModifiers(Modifier.PUBLIC);
builder.addParameter(DRIVER_CONTEXT, "context");
builder.returns(implementation);
List<String> args = new ArrayList<>();
args.add("source");
for (ProcessFunctionArg arg : this.args) {
String invocation = arg.factoryInvocation(builder);
if (invocation != null) {
args.add(invocation);
}
}
args.add("context");
builder.addStatement("return new $T($L)", implementation, String.join(", ", args));
return builder.build();
}
MethodSpec close() {
MethodSpec.Builder builder = MethodSpec.methodBuilder("close").addAnnotation(Override.class);
builder.addModifiers(Modifier.PUBLIC);
List<String> invocations = args.stream().map(ProcessFunctionArg::closeInvocation).filter(Objects::nonNull).toList();
if (invocations.isEmpty() == false) {
builder.addStatement("$T.closeExpectNoException(" + String.join(", ", invocations) + ")", Types.RELEASABLES);
}
return builder.build();
} }
} }

View file

@ -121,6 +121,7 @@ public class EvaluatorProcessor implements Processor {
"evaluator", "evaluator",
new ConvertEvaluatorImplementer( new ConvertEvaluatorImplementer(
env.getElementUtils(), env.getElementUtils(),
env.getTypeUtils(),
(ExecutableElement) evaluatorMethod, (ExecutableElement) evaluatorMethod,
convertEvaluatorAnn.extraName(), convertEvaluatorAnn.extraName(),
warnExceptionsTypes warnExceptionsTypes

View file

@ -1403,6 +1403,20 @@ emp_no:integer | first_name:keyword | name_lower:keyword
; ;
toLowerMv
required_capability: to_lower_mv
// tag::to_lower_mv[]
ROW v = TO_LOWER(["Some", "Text"])
// end::to_lower_mv[]
;
// tag::to_lower_mv-result[]
v:keyword
["some", "text"]
// end::to_lower_mv-result[]
;
toUpperRow#[skip:-8.12.99] toUpperRow#[skip:-8.12.99]
// tag::to_upper[] // tag::to_upper[]
ROW message = "Some Text" ROW message = "Some Text"
@ -1425,6 +1439,20 @@ emp_no:integer | first_name:keyword | name_upper:keyword
; ;
toUpperMv
required_capability: to_lower_mv
// tag::to_upper_mv[]
ROW v = TO_UPPER(["Some", "Text"])
// end::to_upper_mv[]
;
// tag::to_upper_mv-result[]
v:keyword
["SOME", "TEXT"]
// end::to_upper_mv-result[]
;
toUpperLowerUnicode#[skip:-8.12.99] toUpperLowerUnicode#[skip:-8.12.99]
row a = "π/2 + a + B + Λ ºC" | eval lower = to_lower(a), upper = to_upper(a) | keep a, upper, lower; row a = "π/2 + a + B + Λ ºC" | eval lower = to_lower(a), upper = to_upper(a) | keep a, upper, lower;

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.DoubleVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToBooleanFromDoubleEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToBooleanFromDoubleEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToBooleanFromDoubleEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator d;
public ToBooleanFromDoubleEvaluator(Source source, EvalOperator.ExpressionEvaluator d,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.d = d;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToBooleanFromDouble"; return d;
} }
@Override @Override
@ -45,7 +49,7 @@ public final class ToBooleanFromDoubleEvaluator extends AbstractConvertFunction.
} }
} }
private static boolean evalValue(DoubleVector container, int index) { private boolean evalValue(DoubleVector container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToBoolean.fromDouble(value); return ToBoolean.fromDouble(value);
} }
@ -80,29 +84,39 @@ public final class ToBooleanFromDoubleEvaluator extends AbstractConvertFunction.
} }
} }
private static boolean evalValue(DoubleBlock container, int index) { private boolean evalValue(DoubleBlock container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToBoolean.fromDouble(value); return ToBoolean.fromDouble(value);
} }
@Override
public String toString() {
return "ToBooleanFromDoubleEvaluator[" + "d=" + d + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(d);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory d;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory d) {
this.field = field;
this.source = source; this.source = source;
this.d = d;
} }
@Override @Override
public ToBooleanFromDoubleEvaluator get(DriverContext context) { public ToBooleanFromDoubleEvaluator get(DriverContext context) {
return new ToBooleanFromDoubleEvaluator(field.get(context), source, context); return new ToBooleanFromDoubleEvaluator(source, d.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToBooleanFromDoubleEvaluator[field=" + field + "]"; return "ToBooleanFromDoubleEvaluator[" + "d=" + d + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.IntVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToBooleanFromIntEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToBooleanFromIntEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToBooleanFromIntEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator i;
public ToBooleanFromIntEvaluator(Source source, EvalOperator.ExpressionEvaluator i,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.i = i;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToBooleanFromInt"; return i;
} }
@Override @Override
@ -45,7 +49,7 @@ public final class ToBooleanFromIntEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static boolean evalValue(IntVector container, int index) { private boolean evalValue(IntVector container, int index) {
int value = container.getInt(index); int value = container.getInt(index);
return ToBoolean.fromInt(value); return ToBoolean.fromInt(value);
} }
@ -80,29 +84,39 @@ public final class ToBooleanFromIntEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static boolean evalValue(IntBlock container, int index) { private boolean evalValue(IntBlock container, int index) {
int value = container.getInt(index); int value = container.getInt(index);
return ToBoolean.fromInt(value); return ToBoolean.fromInt(value);
} }
@Override
public String toString() {
return "ToBooleanFromIntEvaluator[" + "i=" + i + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(i);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory i;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory i) {
this.field = field;
this.source = source; this.source = source;
this.i = i;
} }
@Override @Override
public ToBooleanFromIntEvaluator get(DriverContext context) { public ToBooleanFromIntEvaluator get(DriverContext context) {
return new ToBooleanFromIntEvaluator(field.get(context), source, context); return new ToBooleanFromIntEvaluator(source, i.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToBooleanFromIntEvaluator[field=" + field + "]"; return "ToBooleanFromIntEvaluator[" + "i=" + i + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.LongVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToBooleanFromLongEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToBooleanFromLongEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToBooleanFromLongEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator l;
public ToBooleanFromLongEvaluator(Source source, EvalOperator.ExpressionEvaluator l,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.l = l;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToBooleanFromLong"; return l;
} }
@Override @Override
@ -45,7 +49,7 @@ public final class ToBooleanFromLongEvaluator extends AbstractConvertFunction.Ab
} }
} }
private static boolean evalValue(LongVector container, int index) { private boolean evalValue(LongVector container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToBoolean.fromLong(value); return ToBoolean.fromLong(value);
} }
@ -80,29 +84,39 @@ public final class ToBooleanFromLongEvaluator extends AbstractConvertFunction.Ab
} }
} }
private static boolean evalValue(LongBlock container, int index) { private boolean evalValue(LongBlock container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToBoolean.fromLong(value); return ToBoolean.fromLong(value);
} }
@Override
public String toString() {
return "ToBooleanFromLongEvaluator[" + "l=" + l + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(l);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory l;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory l) {
this.field = field;
this.source = source; this.source = source;
this.l = l;
} }
@Override @Override
public ToBooleanFromLongEvaluator get(DriverContext context) { public ToBooleanFromLongEvaluator get(DriverContext context) {
return new ToBooleanFromLongEvaluator(field.get(context), source, context); return new ToBooleanFromLongEvaluator(source, l.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToBooleanFromLongEvaluator[field=" + field + "]"; return "ToBooleanFromLongEvaluator[" + "l=" + l + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToBooleanFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToBooleanFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToBooleanFromStringEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator keyword;
public ToBooleanFromStringEvaluator(Source source, EvalOperator.ExpressionEvaluator keyword,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.keyword = keyword;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToBooleanFromString"; return keyword;
} }
@Override @Override
@ -47,7 +51,7 @@ public final class ToBooleanFromStringEvaluator extends AbstractConvertFunction.
} }
} }
private static boolean evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private boolean evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToBoolean.fromKeyword(value); return ToBoolean.fromKeyword(value);
} }
@ -83,29 +87,39 @@ public final class ToBooleanFromStringEvaluator extends AbstractConvertFunction.
} }
} }
private static boolean evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private boolean evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToBoolean.fromKeyword(value); return ToBoolean.fromKeyword(value);
} }
@Override
public String toString() {
return "ToBooleanFromStringEvaluator[" + "keyword=" + keyword + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(keyword);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory keyword;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory keyword) {
this.field = field;
this.source = source; this.source = source;
this.keyword = keyword;
} }
@Override @Override
public ToBooleanFromStringEvaluator get(DriverContext context) { public ToBooleanFromStringEvaluator get(DriverContext context) {
return new ToBooleanFromStringEvaluator(field.get(context), source, context); return new ToBooleanFromStringEvaluator(source, keyword.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToBooleanFromStringEvaluator[field=" + field + "]"; return "ToBooleanFromStringEvaluator[" + "keyword=" + keyword + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.LongVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToBooleanFromUnsignedLongEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToBooleanFromUnsignedLongEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToBooleanFromUnsignedLongEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator ul;
public ToBooleanFromUnsignedLongEvaluator(Source source, EvalOperator.ExpressionEvaluator ul,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.ul = ul;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToBooleanFromUnsignedLong"; return ul;
} }
@Override @Override
@ -45,7 +49,7 @@ public final class ToBooleanFromUnsignedLongEvaluator extends AbstractConvertFun
} }
} }
private static boolean evalValue(LongVector container, int index) { private boolean evalValue(LongVector container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToBoolean.fromUnsignedLong(value); return ToBoolean.fromUnsignedLong(value);
} }
@ -80,29 +84,39 @@ public final class ToBooleanFromUnsignedLongEvaluator extends AbstractConvertFun
} }
} }
private static boolean evalValue(LongBlock container, int index) { private boolean evalValue(LongBlock container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToBoolean.fromUnsignedLong(value); return ToBoolean.fromUnsignedLong(value);
} }
@Override
public String toString() {
return "ToBooleanFromUnsignedLongEvaluator[" + "ul=" + ul + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(ul);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory ul;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory ul) {
this.field = field;
this.source = source; this.source = source;
this.ul = ul;
} }
@Override @Override
public ToBooleanFromUnsignedLongEvaluator get(DriverContext context) { public ToBooleanFromUnsignedLongEvaluator get(DriverContext context) {
return new ToBooleanFromUnsignedLongEvaluator(field.get(context), source, context); return new ToBooleanFromUnsignedLongEvaluator(source, ul.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToBooleanFromUnsignedLongEvaluator[field=" + field + "]"; return "ToBooleanFromUnsignedLongEvaluator[" + "ul=" + ul + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToCartesianPointFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToCartesianPointFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToCartesianPointFromStringEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public ToCartesianPointFromStringEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToCartesianPointFromString"; return in;
} }
@Override @Override
@ -57,7 +61,7 @@ public final class ToCartesianPointFromStringEvaluator extends AbstractConvertFu
} }
} }
private static BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToCartesianPoint.fromKeyword(value); return ToCartesianPoint.fromKeyword(value);
} }
@ -97,29 +101,39 @@ public final class ToCartesianPointFromStringEvaluator extends AbstractConvertFu
} }
} }
private static BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToCartesianPoint.fromKeyword(value); return ToCartesianPoint.fromKeyword(value);
} }
@Override
public String toString() {
return "ToCartesianPointFromStringEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public ToCartesianPointFromStringEvaluator get(DriverContext context) { public ToCartesianPointFromStringEvaluator get(DriverContext context) {
return new ToCartesianPointFromStringEvaluator(field.get(context), source, context); return new ToCartesianPointFromStringEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToCartesianPointFromStringEvaluator[field=" + field + "]"; return "ToCartesianPointFromStringEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToCartesianShapeFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToCartesianShapeFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToCartesianShapeFromStringEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public ToCartesianShapeFromStringEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToCartesianShapeFromString"; return in;
} }
@Override @Override
@ -57,7 +61,7 @@ public final class ToCartesianShapeFromStringEvaluator extends AbstractConvertFu
} }
} }
private static BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToCartesianShape.fromKeyword(value); return ToCartesianShape.fromKeyword(value);
} }
@ -97,29 +101,39 @@ public final class ToCartesianShapeFromStringEvaluator extends AbstractConvertFu
} }
} }
private static BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToCartesianShape.fromKeyword(value); return ToCartesianShape.fromKeyword(value);
} }
@Override
public String toString() {
return "ToCartesianShapeFromStringEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public ToCartesianShapeFromStringEvaluator get(DriverContext context) { public ToCartesianShapeFromStringEvaluator get(DriverContext context) {
return new ToCartesianShapeFromStringEvaluator(field.get(context), source, context); return new ToCartesianShapeFromStringEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToCartesianShapeFromStringEvaluator[field=" + field + "]"; return "ToCartesianShapeFromStringEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.LongVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToDateNanosFromDatetimeEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToDateNanosFromDatetimeEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToDateNanosFromDatetimeEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public ToDateNanosFromDatetimeEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToDateNanosFromDatetime"; return in;
} }
@Override @Override
@ -55,7 +59,7 @@ public final class ToDateNanosFromDatetimeEvaluator extends AbstractConvertFunct
} }
} }
private static long evalValue(LongVector container, int index) { private long evalValue(LongVector container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToDateNanos.fromDatetime(value); return ToDateNanos.fromDatetime(value);
} }
@ -94,29 +98,39 @@ public final class ToDateNanosFromDatetimeEvaluator extends AbstractConvertFunct
} }
} }
private static long evalValue(LongBlock container, int index) { private long evalValue(LongBlock container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToDateNanos.fromDatetime(value); return ToDateNanos.fromDatetime(value);
} }
@Override
public String toString() {
return "ToDateNanosFromDatetimeEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public ToDateNanosFromDatetimeEvaluator get(DriverContext context) { public ToDateNanosFromDatetimeEvaluator get(DriverContext context) {
return new ToDateNanosFromDatetimeEvaluator(field.get(context), source, context); return new ToDateNanosFromDatetimeEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToDateNanosFromDatetimeEvaluator[field=" + field + "]"; return "ToDateNanosFromDatetimeEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.LongBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.InvalidArgumentException; import org.elasticsearch.xpack.esql.core.InvalidArgumentException;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
@ -22,14 +23,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToDateNanosFromDoubleEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToDateNanosFromDoubleEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToDateNanosFromDoubleEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public ToDateNanosFromDoubleEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToDateNanosFromDouble"; return in;
} }
@Override @Override
@ -57,7 +61,7 @@ public final class ToDateNanosFromDoubleEvaluator extends AbstractConvertFunctio
} }
} }
private static long evalValue(DoubleVector container, int index) { private long evalValue(DoubleVector container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToDateNanos.fromDouble(value); return ToDateNanos.fromDouble(value);
} }
@ -96,29 +100,39 @@ public final class ToDateNanosFromDoubleEvaluator extends AbstractConvertFunctio
} }
} }
private static long evalValue(DoubleBlock container, int index) { private long evalValue(DoubleBlock container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToDateNanos.fromDouble(value); return ToDateNanos.fromDouble(value);
} }
@Override
public String toString() {
return "ToDateNanosFromDoubleEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public ToDateNanosFromDoubleEvaluator get(DriverContext context) { public ToDateNanosFromDoubleEvaluator get(DriverContext context) {
return new ToDateNanosFromDoubleEvaluator(field.get(context), source, context); return new ToDateNanosFromDoubleEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToDateNanosFromDoubleEvaluator[field=" + field + "]"; return "ToDateNanosFromDoubleEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.LongVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToDateNanosFromLongEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToDateNanosFromLongEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToDateNanosFromLongEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public ToDateNanosFromLongEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToDateNanosFromLong"; return in;
} }
@Override @Override
@ -55,7 +59,7 @@ public final class ToDateNanosFromLongEvaluator extends AbstractConvertFunction.
} }
} }
private static long evalValue(LongVector container, int index) { private long evalValue(LongVector container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToDateNanos.fromLong(value); return ToDateNanos.fromLong(value);
} }
@ -94,29 +98,39 @@ public final class ToDateNanosFromLongEvaluator extends AbstractConvertFunction.
} }
} }
private static long evalValue(LongBlock container, int index) { private long evalValue(LongBlock container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToDateNanos.fromLong(value); return ToDateNanos.fromLong(value);
} }
@Override
public String toString() {
return "ToDateNanosFromLongEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public ToDateNanosFromLongEvaluator get(DriverContext context) { public ToDateNanosFromLongEvaluator get(DriverContext context) {
return new ToDateNanosFromLongEvaluator(field.get(context), source, context); return new ToDateNanosFromLongEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToDateNanosFromLongEvaluator[field=" + field + "]"; return "ToDateNanosFromLongEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -15,6 +15,7 @@ import org.elasticsearch.compute.data.LongBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -22,14 +23,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToDateNanosFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToDateNanosFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToDateNanosFromStringEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public ToDateNanosFromStringEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToDateNanosFromString"; return in;
} }
@Override @Override
@ -58,7 +62,7 @@ public final class ToDateNanosFromStringEvaluator extends AbstractConvertFunctio
} }
} }
private static long evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private long evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToDateNanos.fromKeyword(value); return ToDateNanos.fromKeyword(value);
} }
@ -98,29 +102,39 @@ public final class ToDateNanosFromStringEvaluator extends AbstractConvertFunctio
} }
} }
private static long evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private long evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToDateNanos.fromKeyword(value); return ToDateNanos.fromKeyword(value);
} }
@Override
public String toString() {
return "ToDateNanosFromStringEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public ToDateNanosFromStringEvaluator get(DriverContext context) { public ToDateNanosFromStringEvaluator get(DriverContext context) {
return new ToDateNanosFromStringEvaluator(field.get(context), source, context); return new ToDateNanosFromStringEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToDateNanosFromStringEvaluator[field=" + field + "]"; return "ToDateNanosFromStringEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.LongVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToDatetimeFromDateNanosEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToDatetimeFromDateNanosEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToDatetimeFromDateNanosEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public ToDatetimeFromDateNanosEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToDatetimeFromDateNanos"; return in;
} }
@Override @Override
@ -55,7 +59,7 @@ public final class ToDatetimeFromDateNanosEvaluator extends AbstractConvertFunct
} }
} }
private static long evalValue(LongVector container, int index) { private long evalValue(LongVector container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToDatetime.fromDatenanos(value); return ToDatetime.fromDatenanos(value);
} }
@ -94,29 +98,39 @@ public final class ToDatetimeFromDateNanosEvaluator extends AbstractConvertFunct
} }
} }
private static long evalValue(LongBlock container, int index) { private long evalValue(LongBlock container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToDatetime.fromDatenanos(value); return ToDatetime.fromDatenanos(value);
} }
@Override
public String toString() {
return "ToDatetimeFromDateNanosEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public ToDatetimeFromDateNanosEvaluator get(DriverContext context) { public ToDatetimeFromDateNanosEvaluator get(DriverContext context) {
return new ToDatetimeFromDateNanosEvaluator(field.get(context), source, context); return new ToDatetimeFromDateNanosEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToDatetimeFromDateNanosEvaluator[field=" + field + "]"; return "ToDatetimeFromDateNanosEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -15,6 +15,7 @@ import org.elasticsearch.compute.data.LongBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -22,14 +23,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToDatetimeFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToDatetimeFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToDatetimeFromStringEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public ToDatetimeFromStringEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToDatetimeFromString"; return in;
} }
@Override @Override
@ -58,7 +62,7 @@ public final class ToDatetimeFromStringEvaluator extends AbstractConvertFunction
} }
} }
private static long evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private long evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToDatetime.fromKeyword(value); return ToDatetime.fromKeyword(value);
} }
@ -98,29 +102,39 @@ public final class ToDatetimeFromStringEvaluator extends AbstractConvertFunction
} }
} }
private static long evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private long evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToDatetime.fromKeyword(value); return ToDatetime.fromKeyword(value);
} }
@Override
public String toString() {
return "ToDatetimeFromStringEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public ToDatetimeFromStringEvaluator get(DriverContext context) { public ToDatetimeFromStringEvaluator get(DriverContext context) {
return new ToDatetimeFromStringEvaluator(field.get(context), source, context); return new ToDatetimeFromStringEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToDatetimeFromStringEvaluator[field=" + field + "]"; return "ToDatetimeFromStringEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.DoubleVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToDegreesEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToDegreesEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToDegreesEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator deg;
public ToDegreesEvaluator(Source source, EvalOperator.ExpressionEvaluator deg,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.deg = deg;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToDegrees"; return deg;
} }
@Override @Override
@ -55,7 +59,7 @@ public final class ToDegreesEvaluator extends AbstractConvertFunction.AbstractEv
} }
} }
private static double evalValue(DoubleVector container, int index) { private double evalValue(DoubleVector container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToDegrees.process(value); return ToDegrees.process(value);
} }
@ -94,29 +98,39 @@ public final class ToDegreesEvaluator extends AbstractConvertFunction.AbstractEv
} }
} }
private static double evalValue(DoubleBlock container, int index) { private double evalValue(DoubleBlock container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToDegrees.process(value); return ToDegrees.process(value);
} }
@Override
public String toString() {
return "ToDegreesEvaluator[" + "deg=" + deg + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(deg);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory deg;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory deg) {
this.field = field;
this.source = source; this.source = source;
this.deg = deg;
} }
@Override @Override
public ToDegreesEvaluator get(DriverContext context) { public ToDegreesEvaluator get(DriverContext context) {
return new ToDegreesEvaluator(field.get(context), source, context); return new ToDegreesEvaluator(source, deg.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToDegreesEvaluator[field=" + field + "]"; return "ToDegreesEvaluator[" + "deg=" + deg + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.DoubleBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToDoubleFromBooleanEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToDoubleFromBooleanEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToDoubleFromBooleanEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator bool;
public ToDoubleFromBooleanEvaluator(Source source, EvalOperator.ExpressionEvaluator bool,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.bool = bool;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToDoubleFromBoolean"; return bool;
} }
@Override @Override
@ -45,7 +49,7 @@ public final class ToDoubleFromBooleanEvaluator extends AbstractConvertFunction.
} }
} }
private static double evalValue(BooleanVector container, int index) { private double evalValue(BooleanVector container, int index) {
boolean value = container.getBoolean(index); boolean value = container.getBoolean(index);
return ToDouble.fromBoolean(value); return ToDouble.fromBoolean(value);
} }
@ -80,29 +84,39 @@ public final class ToDoubleFromBooleanEvaluator extends AbstractConvertFunction.
} }
} }
private static double evalValue(BooleanBlock container, int index) { private double evalValue(BooleanBlock container, int index) {
boolean value = container.getBoolean(index); boolean value = container.getBoolean(index);
return ToDouble.fromBoolean(value); return ToDouble.fromBoolean(value);
} }
@Override
public String toString() {
return "ToDoubleFromBooleanEvaluator[" + "bool=" + bool + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(bool);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory bool;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory bool) {
this.field = field;
this.source = source; this.source = source;
this.bool = bool;
} }
@Override @Override
public ToDoubleFromBooleanEvaluator get(DriverContext context) { public ToDoubleFromBooleanEvaluator get(DriverContext context) {
return new ToDoubleFromBooleanEvaluator(field.get(context), source, context); return new ToDoubleFromBooleanEvaluator(source, bool.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToDoubleFromBooleanEvaluator[field=" + field + "]"; return "ToDoubleFromBooleanEvaluator[" + "bool=" + bool + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.IntVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToDoubleFromIntEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToDoubleFromIntEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToDoubleFromIntEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator i;
public ToDoubleFromIntEvaluator(Source source, EvalOperator.ExpressionEvaluator i,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.i = i;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToDoubleFromInt"; return i;
} }
@Override @Override
@ -45,7 +49,7 @@ public final class ToDoubleFromIntEvaluator extends AbstractConvertFunction.Abst
} }
} }
private static double evalValue(IntVector container, int index) { private double evalValue(IntVector container, int index) {
int value = container.getInt(index); int value = container.getInt(index);
return ToDouble.fromInt(value); return ToDouble.fromInt(value);
} }
@ -80,29 +84,39 @@ public final class ToDoubleFromIntEvaluator extends AbstractConvertFunction.Abst
} }
} }
private static double evalValue(IntBlock container, int index) { private double evalValue(IntBlock container, int index) {
int value = container.getInt(index); int value = container.getInt(index);
return ToDouble.fromInt(value); return ToDouble.fromInt(value);
} }
@Override
public String toString() {
return "ToDoubleFromIntEvaluator[" + "i=" + i + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(i);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory i;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory i) {
this.field = field;
this.source = source; this.source = source;
this.i = i;
} }
@Override @Override
public ToDoubleFromIntEvaluator get(DriverContext context) { public ToDoubleFromIntEvaluator get(DriverContext context) {
return new ToDoubleFromIntEvaluator(field.get(context), source, context); return new ToDoubleFromIntEvaluator(source, i.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToDoubleFromIntEvaluator[field=" + field + "]"; return "ToDoubleFromIntEvaluator[" + "i=" + i + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.LongVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToDoubleFromLongEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToDoubleFromLongEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToDoubleFromLongEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator l;
public ToDoubleFromLongEvaluator(Source source, EvalOperator.ExpressionEvaluator l,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.l = l;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToDoubleFromLong"; return l;
} }
@Override @Override
@ -45,7 +49,7 @@ public final class ToDoubleFromLongEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static double evalValue(LongVector container, int index) { private double evalValue(LongVector container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToDouble.fromLong(value); return ToDouble.fromLong(value);
} }
@ -80,29 +84,39 @@ public final class ToDoubleFromLongEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static double evalValue(LongBlock container, int index) { private double evalValue(LongBlock container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToDouble.fromLong(value); return ToDouble.fromLong(value);
} }
@Override
public String toString() {
return "ToDoubleFromLongEvaluator[" + "l=" + l + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(l);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory l;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory l) {
this.field = field;
this.source = source; this.source = source;
this.l = l;
} }
@Override @Override
public ToDoubleFromLongEvaluator get(DriverContext context) { public ToDoubleFromLongEvaluator get(DriverContext context) {
return new ToDoubleFromLongEvaluator(field.get(context), source, context); return new ToDoubleFromLongEvaluator(source, l.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToDoubleFromLongEvaluator[field=" + field + "]"; return "ToDoubleFromLongEvaluator[" + "l=" + l + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.DoubleBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.InvalidArgumentException; import org.elasticsearch.xpack.esql.core.InvalidArgumentException;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
@ -22,14 +23,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToDoubleFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToDoubleFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToDoubleFromStringEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public ToDoubleFromStringEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToDoubleFromString"; return in;
} }
@Override @Override
@ -58,7 +62,7 @@ public final class ToDoubleFromStringEvaluator extends AbstractConvertFunction.A
} }
} }
private static double evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private double evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToDouble.fromKeyword(value); return ToDouble.fromKeyword(value);
} }
@ -98,29 +102,39 @@ public final class ToDoubleFromStringEvaluator extends AbstractConvertFunction.A
} }
} }
private static double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToDouble.fromKeyword(value); return ToDouble.fromKeyword(value);
} }
@Override
public String toString() {
return "ToDoubleFromStringEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public ToDoubleFromStringEvaluator get(DriverContext context) { public ToDoubleFromStringEvaluator get(DriverContext context) {
return new ToDoubleFromStringEvaluator(field.get(context), source, context); return new ToDoubleFromStringEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToDoubleFromStringEvaluator[field=" + field + "]"; return "ToDoubleFromStringEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.LongVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToDoubleFromUnsignedLongEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToDoubleFromUnsignedLongEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToDoubleFromUnsignedLongEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator l;
public ToDoubleFromUnsignedLongEvaluator(Source source, EvalOperator.ExpressionEvaluator l,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.l = l;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToDoubleFromUnsignedLong"; return l;
} }
@Override @Override
@ -45,7 +49,7 @@ public final class ToDoubleFromUnsignedLongEvaluator extends AbstractConvertFunc
} }
} }
private static double evalValue(LongVector container, int index) { private double evalValue(LongVector container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToDouble.fromUnsignedLong(value); return ToDouble.fromUnsignedLong(value);
} }
@ -80,29 +84,39 @@ public final class ToDoubleFromUnsignedLongEvaluator extends AbstractConvertFunc
} }
} }
private static double evalValue(LongBlock container, int index) { private double evalValue(LongBlock container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToDouble.fromUnsignedLong(value); return ToDouble.fromUnsignedLong(value);
} }
@Override
public String toString() {
return "ToDoubleFromUnsignedLongEvaluator[" + "l=" + l + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(l);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory l;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory l) {
this.field = field;
this.source = source; this.source = source;
this.l = l;
} }
@Override @Override
public ToDoubleFromUnsignedLongEvaluator get(DriverContext context) { public ToDoubleFromUnsignedLongEvaluator get(DriverContext context) {
return new ToDoubleFromUnsignedLongEvaluator(field.get(context), source, context); return new ToDoubleFromUnsignedLongEvaluator(source, l.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToDoubleFromUnsignedLongEvaluator[field=" + field + "]"; return "ToDoubleFromUnsignedLongEvaluator[" + "l=" + l + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToGeoPointFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToGeoPointFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToGeoPointFromStringEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public ToGeoPointFromStringEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToGeoPointFromString"; return in;
} }
@Override @Override
@ -57,7 +61,7 @@ public final class ToGeoPointFromStringEvaluator extends AbstractConvertFunction
} }
} }
private static BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToGeoPoint.fromKeyword(value); return ToGeoPoint.fromKeyword(value);
} }
@ -97,29 +101,39 @@ public final class ToGeoPointFromStringEvaluator extends AbstractConvertFunction
} }
} }
private static BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToGeoPoint.fromKeyword(value); return ToGeoPoint.fromKeyword(value);
} }
@Override
public String toString() {
return "ToGeoPointFromStringEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public ToGeoPointFromStringEvaluator get(DriverContext context) { public ToGeoPointFromStringEvaluator get(DriverContext context) {
return new ToGeoPointFromStringEvaluator(field.get(context), source, context); return new ToGeoPointFromStringEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToGeoPointFromStringEvaluator[field=" + field + "]"; return "ToGeoPointFromStringEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToGeoShapeFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToGeoShapeFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToGeoShapeFromStringEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public ToGeoShapeFromStringEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToGeoShapeFromString"; return in;
} }
@Override @Override
@ -57,7 +61,7 @@ public final class ToGeoShapeFromStringEvaluator extends AbstractConvertFunction
} }
} }
private static BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToGeoShape.fromKeyword(value); return ToGeoShape.fromKeyword(value);
} }
@ -97,29 +101,39 @@ public final class ToGeoShapeFromStringEvaluator extends AbstractConvertFunction
} }
} }
private static BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToGeoShape.fromKeyword(value); return ToGeoShape.fromKeyword(value);
} }
@Override
public String toString() {
return "ToGeoShapeFromStringEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public ToGeoShapeFromStringEvaluator get(DriverContext context) { public ToGeoShapeFromStringEvaluator get(DriverContext context) {
return new ToGeoShapeFromStringEvaluator(field.get(context), source, context); return new ToGeoShapeFromStringEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToGeoShapeFromStringEvaluator[field=" + field + "]"; return "ToGeoShapeFromStringEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToIPFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToIPFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToIPFromStringEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator asString;
public ToIPFromStringEvaluator(Source source, EvalOperator.ExpressionEvaluator asString,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.asString = asString;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToIPFromString"; return asString;
} }
@Override @Override
@ -57,7 +61,7 @@ public final class ToIPFromStringEvaluator extends AbstractConvertFunction.Abstr
} }
} }
private static BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToIP.fromKeyword(value); return ToIP.fromKeyword(value);
} }
@ -97,29 +101,39 @@ public final class ToIPFromStringEvaluator extends AbstractConvertFunction.Abstr
} }
} }
private static BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToIP.fromKeyword(value); return ToIP.fromKeyword(value);
} }
@Override
public String toString() {
return "ToIPFromStringEvaluator[" + "asString=" + asString + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(asString);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory asString;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory asString) {
this.field = field;
this.source = source; this.source = source;
this.asString = asString;
} }
@Override @Override
public ToIPFromStringEvaluator get(DriverContext context) { public ToIPFromStringEvaluator get(DriverContext context) {
return new ToIPFromStringEvaluator(field.get(context), source, context); return new ToIPFromStringEvaluator(source, asString.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToIPFromStringEvaluator[field=" + field + "]"; return "ToIPFromStringEvaluator[" + "asString=" + asString + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.IntBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToIntegerFromBooleanEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToIntegerFromBooleanEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToIntegerFromBooleanEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator bool;
public ToIntegerFromBooleanEvaluator(Source source, EvalOperator.ExpressionEvaluator bool,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.bool = bool;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToIntegerFromBoolean"; return bool;
} }
@Override @Override
@ -45,7 +49,7 @@ public final class ToIntegerFromBooleanEvaluator extends AbstractConvertFunction
} }
} }
private static int evalValue(BooleanVector container, int index) { private int evalValue(BooleanVector container, int index) {
boolean value = container.getBoolean(index); boolean value = container.getBoolean(index);
return ToInteger.fromBoolean(value); return ToInteger.fromBoolean(value);
} }
@ -80,29 +84,39 @@ public final class ToIntegerFromBooleanEvaluator extends AbstractConvertFunction
} }
} }
private static int evalValue(BooleanBlock container, int index) { private int evalValue(BooleanBlock container, int index) {
boolean value = container.getBoolean(index); boolean value = container.getBoolean(index);
return ToInteger.fromBoolean(value); return ToInteger.fromBoolean(value);
} }
@Override
public String toString() {
return "ToIntegerFromBooleanEvaluator[" + "bool=" + bool + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(bool);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory bool;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory bool) {
this.field = field;
this.source = source; this.source = source;
this.bool = bool;
} }
@Override @Override
public ToIntegerFromBooleanEvaluator get(DriverContext context) { public ToIntegerFromBooleanEvaluator get(DriverContext context) {
return new ToIntegerFromBooleanEvaluator(field.get(context), source, context); return new ToIntegerFromBooleanEvaluator(source, bool.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToIntegerFromBooleanEvaluator[field=" + field + "]"; return "ToIntegerFromBooleanEvaluator[" + "bool=" + bool + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.IntBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.InvalidArgumentException; import org.elasticsearch.xpack.esql.core.InvalidArgumentException;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToIntegerFromDoubleEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToIntegerFromDoubleEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToIntegerFromDoubleEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator dbl;
public ToIntegerFromDoubleEvaluator(Source source, EvalOperator.ExpressionEvaluator dbl,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.dbl = dbl;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToIntegerFromDouble"; return dbl;
} }
@Override @Override
@ -56,7 +60,7 @@ public final class ToIntegerFromDoubleEvaluator extends AbstractConvertFunction.
} }
} }
private static int evalValue(DoubleVector container, int index) { private int evalValue(DoubleVector container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToInteger.fromDouble(value); return ToInteger.fromDouble(value);
} }
@ -95,29 +99,39 @@ public final class ToIntegerFromDoubleEvaluator extends AbstractConvertFunction.
} }
} }
private static int evalValue(DoubleBlock container, int index) { private int evalValue(DoubleBlock container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToInteger.fromDouble(value); return ToInteger.fromDouble(value);
} }
@Override
public String toString() {
return "ToIntegerFromDoubleEvaluator[" + "dbl=" + dbl + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(dbl);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory dbl;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory dbl) {
this.field = field;
this.source = source; this.source = source;
this.dbl = dbl;
} }
@Override @Override
public ToIntegerFromDoubleEvaluator get(DriverContext context) { public ToIntegerFromDoubleEvaluator get(DriverContext context) {
return new ToIntegerFromDoubleEvaluator(field.get(context), source, context); return new ToIntegerFromDoubleEvaluator(source, dbl.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToIntegerFromDoubleEvaluator[field=" + field + "]"; return "ToIntegerFromDoubleEvaluator[" + "dbl=" + dbl + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.LongVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.InvalidArgumentException; import org.elasticsearch.xpack.esql.core.InvalidArgumentException;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToIntegerFromLongEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToIntegerFromLongEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToIntegerFromLongEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator lng;
public ToIntegerFromLongEvaluator(Source source, EvalOperator.ExpressionEvaluator lng,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.lng = lng;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToIntegerFromLong"; return lng;
} }
@Override @Override
@ -56,7 +60,7 @@ public final class ToIntegerFromLongEvaluator extends AbstractConvertFunction.Ab
} }
} }
private static int evalValue(LongVector container, int index) { private int evalValue(LongVector container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToInteger.fromLong(value); return ToInteger.fromLong(value);
} }
@ -95,29 +99,39 @@ public final class ToIntegerFromLongEvaluator extends AbstractConvertFunction.Ab
} }
} }
private static int evalValue(LongBlock container, int index) { private int evalValue(LongBlock container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToInteger.fromLong(value); return ToInteger.fromLong(value);
} }
@Override
public String toString() {
return "ToIntegerFromLongEvaluator[" + "lng=" + lng + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(lng);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory lng;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory lng) {
this.field = field;
this.source = source; this.source = source;
this.lng = lng;
} }
@Override @Override
public ToIntegerFromLongEvaluator get(DriverContext context) { public ToIntegerFromLongEvaluator get(DriverContext context) {
return new ToIntegerFromLongEvaluator(field.get(context), source, context); return new ToIntegerFromLongEvaluator(source, lng.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToIntegerFromLongEvaluator[field=" + field + "]"; return "ToIntegerFromLongEvaluator[" + "lng=" + lng + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.IntBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.InvalidArgumentException; import org.elasticsearch.xpack.esql.core.InvalidArgumentException;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
@ -22,14 +23,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToIntegerFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToIntegerFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToIntegerFromStringEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public ToIntegerFromStringEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToIntegerFromString"; return in;
} }
@Override @Override
@ -58,7 +62,7 @@ public final class ToIntegerFromStringEvaluator extends AbstractConvertFunction.
} }
} }
private static int evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private int evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToInteger.fromKeyword(value); return ToInteger.fromKeyword(value);
} }
@ -98,29 +102,39 @@ public final class ToIntegerFromStringEvaluator extends AbstractConvertFunction.
} }
} }
private static int evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private int evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToInteger.fromKeyword(value); return ToInteger.fromKeyword(value);
} }
@Override
public String toString() {
return "ToIntegerFromStringEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public ToIntegerFromStringEvaluator get(DriverContext context) { public ToIntegerFromStringEvaluator get(DriverContext context) {
return new ToIntegerFromStringEvaluator(field.get(context), source, context); return new ToIntegerFromStringEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToIntegerFromStringEvaluator[field=" + field + "]"; return "ToIntegerFromStringEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.LongVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.InvalidArgumentException; import org.elasticsearch.xpack.esql.core.InvalidArgumentException;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToIntegerFromUnsignedLongEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToIntegerFromUnsignedLongEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToIntegerFromUnsignedLongEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator ul;
public ToIntegerFromUnsignedLongEvaluator(Source source, EvalOperator.ExpressionEvaluator ul,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.ul = ul;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToIntegerFromUnsignedLong"; return ul;
} }
@Override @Override
@ -56,7 +60,7 @@ public final class ToIntegerFromUnsignedLongEvaluator extends AbstractConvertFun
} }
} }
private static int evalValue(LongVector container, int index) { private int evalValue(LongVector container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToInteger.fromUnsignedLong(value); return ToInteger.fromUnsignedLong(value);
} }
@ -95,29 +99,39 @@ public final class ToIntegerFromUnsignedLongEvaluator extends AbstractConvertFun
} }
} }
private static int evalValue(LongBlock container, int index) { private int evalValue(LongBlock container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToInteger.fromUnsignedLong(value); return ToInteger.fromUnsignedLong(value);
} }
@Override
public String toString() {
return "ToIntegerFromUnsignedLongEvaluator[" + "ul=" + ul + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(ul);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory ul;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory ul) {
this.field = field;
this.source = source; this.source = source;
this.ul = ul;
} }
@Override @Override
public ToIntegerFromUnsignedLongEvaluator get(DriverContext context) { public ToIntegerFromUnsignedLongEvaluator get(DriverContext context) {
return new ToIntegerFromUnsignedLongEvaluator(field.get(context), source, context); return new ToIntegerFromUnsignedLongEvaluator(source, ul.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToIntegerFromUnsignedLongEvaluator[field=" + field + "]"; return "ToIntegerFromUnsignedLongEvaluator[" + "ul=" + ul + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.LongBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToLongFromBooleanEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToLongFromBooleanEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToLongFromBooleanEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator bool;
public ToLongFromBooleanEvaluator(Source source, EvalOperator.ExpressionEvaluator bool,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.bool = bool;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToLongFromBoolean"; return bool;
} }
@Override @Override
@ -45,7 +49,7 @@ public final class ToLongFromBooleanEvaluator extends AbstractConvertFunction.Ab
} }
} }
private static long evalValue(BooleanVector container, int index) { private long evalValue(BooleanVector container, int index) {
boolean value = container.getBoolean(index); boolean value = container.getBoolean(index);
return ToLong.fromBoolean(value); return ToLong.fromBoolean(value);
} }
@ -80,29 +84,39 @@ public final class ToLongFromBooleanEvaluator extends AbstractConvertFunction.Ab
} }
} }
private static long evalValue(BooleanBlock container, int index) { private long evalValue(BooleanBlock container, int index) {
boolean value = container.getBoolean(index); boolean value = container.getBoolean(index);
return ToLong.fromBoolean(value); return ToLong.fromBoolean(value);
} }
@Override
public String toString() {
return "ToLongFromBooleanEvaluator[" + "bool=" + bool + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(bool);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory bool;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory bool) {
this.field = field;
this.source = source; this.source = source;
this.bool = bool;
} }
@Override @Override
public ToLongFromBooleanEvaluator get(DriverContext context) { public ToLongFromBooleanEvaluator get(DriverContext context) {
return new ToLongFromBooleanEvaluator(field.get(context), source, context); return new ToLongFromBooleanEvaluator(source, bool.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToLongFromBooleanEvaluator[field=" + field + "]"; return "ToLongFromBooleanEvaluator[" + "bool=" + bool + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.LongBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.InvalidArgumentException; import org.elasticsearch.xpack.esql.core.InvalidArgumentException;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToLongFromDoubleEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToLongFromDoubleEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToLongFromDoubleEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator dbl;
public ToLongFromDoubleEvaluator(Source source, EvalOperator.ExpressionEvaluator dbl,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.dbl = dbl;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToLongFromDouble"; return dbl;
} }
@Override @Override
@ -56,7 +60,7 @@ public final class ToLongFromDoubleEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static long evalValue(DoubleVector container, int index) { private long evalValue(DoubleVector container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToLong.fromDouble(value); return ToLong.fromDouble(value);
} }
@ -95,29 +99,39 @@ public final class ToLongFromDoubleEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static long evalValue(DoubleBlock container, int index) { private long evalValue(DoubleBlock container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToLong.fromDouble(value); return ToLong.fromDouble(value);
} }
@Override
public String toString() {
return "ToLongFromDoubleEvaluator[" + "dbl=" + dbl + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(dbl);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory dbl;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory dbl) {
this.field = field;
this.source = source; this.source = source;
this.dbl = dbl;
} }
@Override @Override
public ToLongFromDoubleEvaluator get(DriverContext context) { public ToLongFromDoubleEvaluator get(DriverContext context) {
return new ToLongFromDoubleEvaluator(field.get(context), source, context); return new ToLongFromDoubleEvaluator(source, dbl.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToLongFromDoubleEvaluator[field=" + field + "]"; return "ToLongFromDoubleEvaluator[" + "dbl=" + dbl + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.LongBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToLongFromIntEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToLongFromIntEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToLongFromIntEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator i;
public ToLongFromIntEvaluator(Source source, EvalOperator.ExpressionEvaluator i,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.i = i;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToLongFromInt"; return i;
} }
@Override @Override
@ -45,7 +49,7 @@ public final class ToLongFromIntEvaluator extends AbstractConvertFunction.Abstra
} }
} }
private static long evalValue(IntVector container, int index) { private long evalValue(IntVector container, int index) {
int value = container.getInt(index); int value = container.getInt(index);
return ToLong.fromInt(value); return ToLong.fromInt(value);
} }
@ -80,29 +84,39 @@ public final class ToLongFromIntEvaluator extends AbstractConvertFunction.Abstra
} }
} }
private static long evalValue(IntBlock container, int index) { private long evalValue(IntBlock container, int index) {
int value = container.getInt(index); int value = container.getInt(index);
return ToLong.fromInt(value); return ToLong.fromInt(value);
} }
@Override
public String toString() {
return "ToLongFromIntEvaluator[" + "i=" + i + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(i);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory i;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory i) {
this.field = field;
this.source = source; this.source = source;
this.i = i;
} }
@Override @Override
public ToLongFromIntEvaluator get(DriverContext context) { public ToLongFromIntEvaluator get(DriverContext context) {
return new ToLongFromIntEvaluator(field.get(context), source, context); return new ToLongFromIntEvaluator(source, i.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToLongFromIntEvaluator[field=" + field + "]"; return "ToLongFromIntEvaluator[" + "i=" + i + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.LongBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.InvalidArgumentException; import org.elasticsearch.xpack.esql.core.InvalidArgumentException;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
@ -22,14 +23,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToLongFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToLongFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToLongFromStringEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public ToLongFromStringEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToLongFromString"; return in;
} }
@Override @Override
@ -58,7 +62,7 @@ public final class ToLongFromStringEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static long evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private long evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToLong.fromKeyword(value); return ToLong.fromKeyword(value);
} }
@ -98,29 +102,39 @@ public final class ToLongFromStringEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static long evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private long evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToLong.fromKeyword(value); return ToLong.fromKeyword(value);
} }
@Override
public String toString() {
return "ToLongFromStringEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public ToLongFromStringEvaluator get(DriverContext context) { public ToLongFromStringEvaluator get(DriverContext context) {
return new ToLongFromStringEvaluator(field.get(context), source, context); return new ToLongFromStringEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToLongFromStringEvaluator[field=" + field + "]"; return "ToLongFromStringEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -12,6 +12,7 @@ import org.elasticsearch.compute.data.LongVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.InvalidArgumentException; import org.elasticsearch.xpack.esql.core.InvalidArgumentException;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToLongFromUnsignedLongEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToLongFromUnsignedLongEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToLongFromUnsignedLongEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator ul;
public ToLongFromUnsignedLongEvaluator(Source source, EvalOperator.ExpressionEvaluator ul,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.ul = ul;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToLongFromUnsignedLong"; return ul;
} }
@Override @Override
@ -55,7 +59,7 @@ public final class ToLongFromUnsignedLongEvaluator extends AbstractConvertFuncti
} }
} }
private static long evalValue(LongVector container, int index) { private long evalValue(LongVector container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToLong.fromUnsignedLong(value); return ToLong.fromUnsignedLong(value);
} }
@ -94,29 +98,39 @@ public final class ToLongFromUnsignedLongEvaluator extends AbstractConvertFuncti
} }
} }
private static long evalValue(LongBlock container, int index) { private long evalValue(LongBlock container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToLong.fromUnsignedLong(value); return ToLong.fromUnsignedLong(value);
} }
@Override
public String toString() {
return "ToLongFromUnsignedLongEvaluator[" + "ul=" + ul + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(ul);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory ul;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory ul) {
this.field = field;
this.source = source; this.source = source;
this.ul = ul;
} }
@Override @Override
public ToLongFromUnsignedLongEvaluator get(DriverContext context) { public ToLongFromUnsignedLongEvaluator get(DriverContext context) {
return new ToLongFromUnsignedLongEvaluator(field.get(context), source, context); return new ToLongFromUnsignedLongEvaluator(source, ul.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToLongFromUnsignedLongEvaluator[field=" + field + "]"; return "ToLongFromUnsignedLongEvaluator[" + "ul=" + ul + "]";
} }
} }
} }

View file

@ -12,6 +12,7 @@ import org.elasticsearch.compute.data.DoubleVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -19,14 +20,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToRadiansEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToRadiansEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToRadiansEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator deg;
public ToRadiansEvaluator(Source source, EvalOperator.ExpressionEvaluator deg,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.deg = deg;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToRadians"; return deg;
} }
@Override @Override
@ -44,7 +48,7 @@ public final class ToRadiansEvaluator extends AbstractConvertFunction.AbstractEv
} }
} }
private static double evalValue(DoubleVector container, int index) { private double evalValue(DoubleVector container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToRadians.process(value); return ToRadians.process(value);
} }
@ -79,29 +83,39 @@ public final class ToRadiansEvaluator extends AbstractConvertFunction.AbstractEv
} }
} }
private static double evalValue(DoubleBlock container, int index) { private double evalValue(DoubleBlock container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToRadians.process(value); return ToRadians.process(value);
} }
@Override
public String toString() {
return "ToRadiansEvaluator[" + "deg=" + deg + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(deg);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory deg;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory deg) {
this.field = field;
this.source = source; this.source = source;
this.deg = deg;
} }
@Override @Override
public ToRadiansEvaluator get(DriverContext context) { public ToRadiansEvaluator get(DriverContext context) {
return new ToRadiansEvaluator(field.get(context), source, context); return new ToRadiansEvaluator(source, deg.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToRadiansEvaluator[field=" + field + "]"; return "ToRadiansEvaluator[" + "deg=" + deg + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.BytesRefBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToStringFromBooleanEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToStringFromBooleanEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToStringFromBooleanEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator bool;
public ToStringFromBooleanEvaluator(Source source, EvalOperator.ExpressionEvaluator bool,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.bool = bool;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToStringFromBoolean"; return bool;
} }
@Override @Override
@ -46,7 +50,7 @@ public final class ToStringFromBooleanEvaluator extends AbstractConvertFunction.
} }
} }
private static BytesRef evalValue(BooleanVector container, int index) { private BytesRef evalValue(BooleanVector container, int index) {
boolean value = container.getBoolean(index); boolean value = container.getBoolean(index);
return ToString.fromBoolean(value); return ToString.fromBoolean(value);
} }
@ -81,29 +85,39 @@ public final class ToStringFromBooleanEvaluator extends AbstractConvertFunction.
} }
} }
private static BytesRef evalValue(BooleanBlock container, int index) { private BytesRef evalValue(BooleanBlock container, int index) {
boolean value = container.getBoolean(index); boolean value = container.getBoolean(index);
return ToString.fromBoolean(value); return ToString.fromBoolean(value);
} }
@Override
public String toString() {
return "ToStringFromBooleanEvaluator[" + "bool=" + bool + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(bool);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory bool;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory bool) {
this.field = field;
this.source = source; this.source = source;
this.bool = bool;
} }
@Override @Override
public ToStringFromBooleanEvaluator get(DriverContext context) { public ToStringFromBooleanEvaluator get(DriverContext context) {
return new ToStringFromBooleanEvaluator(field.get(context), source, context); return new ToStringFromBooleanEvaluator(source, bool.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToStringFromBooleanEvaluator[field=" + field + "]"; return "ToStringFromBooleanEvaluator[" + "bool=" + bool + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToStringFromCartesianPointEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToStringFromCartesianPointEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToStringFromCartesianPointEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator wkb;
public ToStringFromCartesianPointEvaluator(Source source, EvalOperator.ExpressionEvaluator wkb,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.wkb = wkb;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToStringFromCartesianPoint"; return wkb;
} }
@Override @Override
@ -46,7 +50,7 @@ public final class ToStringFromCartesianPointEvaluator extends AbstractConvertFu
} }
} }
private static BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToString.fromCartesianPoint(value); return ToString.fromCartesianPoint(value);
} }
@ -82,29 +86,39 @@ public final class ToStringFromCartesianPointEvaluator extends AbstractConvertFu
} }
} }
private static BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToString.fromCartesianPoint(value); return ToString.fromCartesianPoint(value);
} }
@Override
public String toString() {
return "ToStringFromCartesianPointEvaluator[" + "wkb=" + wkb + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(wkb);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory wkb;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory wkb) {
this.field = field;
this.source = source; this.source = source;
this.wkb = wkb;
} }
@Override @Override
public ToStringFromCartesianPointEvaluator get(DriverContext context) { public ToStringFromCartesianPointEvaluator get(DriverContext context) {
return new ToStringFromCartesianPointEvaluator(field.get(context), source, context); return new ToStringFromCartesianPointEvaluator(source, wkb.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToStringFromCartesianPointEvaluator[field=" + field + "]"; return "ToStringFromCartesianPointEvaluator[" + "wkb=" + wkb + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToStringFromCartesianShapeEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToStringFromCartesianShapeEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToStringFromCartesianShapeEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator wkb;
public ToStringFromCartesianShapeEvaluator(Source source, EvalOperator.ExpressionEvaluator wkb,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.wkb = wkb;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToStringFromCartesianShape"; return wkb;
} }
@Override @Override
@ -46,7 +50,7 @@ public final class ToStringFromCartesianShapeEvaluator extends AbstractConvertFu
} }
} }
private static BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToString.fromCartesianShape(value); return ToString.fromCartesianShape(value);
} }
@ -82,29 +86,39 @@ public final class ToStringFromCartesianShapeEvaluator extends AbstractConvertFu
} }
} }
private static BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToString.fromCartesianShape(value); return ToString.fromCartesianShape(value);
} }
@Override
public String toString() {
return "ToStringFromCartesianShapeEvaluator[" + "wkb=" + wkb + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(wkb);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory wkb;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory wkb) {
this.field = field;
this.source = source; this.source = source;
this.wkb = wkb;
} }
@Override @Override
public ToStringFromCartesianShapeEvaluator get(DriverContext context) { public ToStringFromCartesianShapeEvaluator get(DriverContext context) {
return new ToStringFromCartesianShapeEvaluator(field.get(context), source, context); return new ToStringFromCartesianShapeEvaluator(source, wkb.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToStringFromCartesianShapeEvaluator[field=" + field + "]"; return "ToStringFromCartesianShapeEvaluator[" + "wkb=" + wkb + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.LongVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToStringFromDateNanosEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToStringFromDateNanosEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToStringFromDateNanosEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator datetime;
public ToStringFromDateNanosEvaluator(Source source, EvalOperator.ExpressionEvaluator datetime,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.datetime = datetime;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToStringFromDateNanos"; return datetime;
} }
@Override @Override
@ -46,7 +50,7 @@ public final class ToStringFromDateNanosEvaluator extends AbstractConvertFunctio
} }
} }
private static BytesRef evalValue(LongVector container, int index) { private BytesRef evalValue(LongVector container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToString.fromDateNanos(value); return ToString.fromDateNanos(value);
} }
@ -81,29 +85,39 @@ public final class ToStringFromDateNanosEvaluator extends AbstractConvertFunctio
} }
} }
private static BytesRef evalValue(LongBlock container, int index) { private BytesRef evalValue(LongBlock container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToString.fromDateNanos(value); return ToString.fromDateNanos(value);
} }
@Override
public String toString() {
return "ToStringFromDateNanosEvaluator[" + "datetime=" + datetime + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(datetime);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory datetime;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory datetime) {
this.field = field;
this.source = source; this.source = source;
this.datetime = datetime;
} }
@Override @Override
public ToStringFromDateNanosEvaluator get(DriverContext context) { public ToStringFromDateNanosEvaluator get(DriverContext context) {
return new ToStringFromDateNanosEvaluator(field.get(context), source, context); return new ToStringFromDateNanosEvaluator(source, datetime.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToStringFromDateNanosEvaluator[field=" + field + "]"; return "ToStringFromDateNanosEvaluator[" + "datetime=" + datetime + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.LongVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToStringFromDatetimeEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToStringFromDatetimeEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToStringFromDatetimeEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator datetime;
public ToStringFromDatetimeEvaluator(Source source, EvalOperator.ExpressionEvaluator datetime,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.datetime = datetime;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToStringFromDatetime"; return datetime;
} }
@Override @Override
@ -46,7 +50,7 @@ public final class ToStringFromDatetimeEvaluator extends AbstractConvertFunction
} }
} }
private static BytesRef evalValue(LongVector container, int index) { private BytesRef evalValue(LongVector container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToString.fromDatetime(value); return ToString.fromDatetime(value);
} }
@ -81,29 +85,39 @@ public final class ToStringFromDatetimeEvaluator extends AbstractConvertFunction
} }
} }
private static BytesRef evalValue(LongBlock container, int index) { private BytesRef evalValue(LongBlock container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToString.fromDatetime(value); return ToString.fromDatetime(value);
} }
@Override
public String toString() {
return "ToStringFromDatetimeEvaluator[" + "datetime=" + datetime + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(datetime);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory datetime;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory datetime) {
this.field = field;
this.source = source; this.source = source;
this.datetime = datetime;
} }
@Override @Override
public ToStringFromDatetimeEvaluator get(DriverContext context) { public ToStringFromDatetimeEvaluator get(DriverContext context) {
return new ToStringFromDatetimeEvaluator(field.get(context), source, context); return new ToStringFromDatetimeEvaluator(source, datetime.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToStringFromDatetimeEvaluator[field=" + field + "]"; return "ToStringFromDatetimeEvaluator[" + "datetime=" + datetime + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.DoubleVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToStringFromDoubleEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToStringFromDoubleEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToStringFromDoubleEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator dbl;
public ToStringFromDoubleEvaluator(Source source, EvalOperator.ExpressionEvaluator dbl,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.dbl = dbl;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToStringFromDouble"; return dbl;
} }
@Override @Override
@ -46,7 +50,7 @@ public final class ToStringFromDoubleEvaluator extends AbstractConvertFunction.A
} }
} }
private static BytesRef evalValue(DoubleVector container, int index) { private BytesRef evalValue(DoubleVector container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToString.fromDouble(value); return ToString.fromDouble(value);
} }
@ -81,29 +85,39 @@ public final class ToStringFromDoubleEvaluator extends AbstractConvertFunction.A
} }
} }
private static BytesRef evalValue(DoubleBlock container, int index) { private BytesRef evalValue(DoubleBlock container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToString.fromDouble(value); return ToString.fromDouble(value);
} }
@Override
public String toString() {
return "ToStringFromDoubleEvaluator[" + "dbl=" + dbl + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(dbl);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory dbl;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory dbl) {
this.field = field;
this.source = source; this.source = source;
this.dbl = dbl;
} }
@Override @Override
public ToStringFromDoubleEvaluator get(DriverContext context) { public ToStringFromDoubleEvaluator get(DriverContext context) {
return new ToStringFromDoubleEvaluator(field.get(context), source, context); return new ToStringFromDoubleEvaluator(source, dbl.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToStringFromDoubleEvaluator[field=" + field + "]"; return "ToStringFromDoubleEvaluator[" + "dbl=" + dbl + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToStringFromGeoPointEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToStringFromGeoPointEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToStringFromGeoPointEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator wkb;
public ToStringFromGeoPointEvaluator(Source source, EvalOperator.ExpressionEvaluator wkb,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.wkb = wkb;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToStringFromGeoPoint"; return wkb;
} }
@Override @Override
@ -46,7 +50,7 @@ public final class ToStringFromGeoPointEvaluator extends AbstractConvertFunction
} }
} }
private static BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToString.fromGeoPoint(value); return ToString.fromGeoPoint(value);
} }
@ -82,29 +86,39 @@ public final class ToStringFromGeoPointEvaluator extends AbstractConvertFunction
} }
} }
private static BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToString.fromGeoPoint(value); return ToString.fromGeoPoint(value);
} }
@Override
public String toString() {
return "ToStringFromGeoPointEvaluator[" + "wkb=" + wkb + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(wkb);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory wkb;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory wkb) {
this.field = field;
this.source = source; this.source = source;
this.wkb = wkb;
} }
@Override @Override
public ToStringFromGeoPointEvaluator get(DriverContext context) { public ToStringFromGeoPointEvaluator get(DriverContext context) {
return new ToStringFromGeoPointEvaluator(field.get(context), source, context); return new ToStringFromGeoPointEvaluator(source, wkb.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToStringFromGeoPointEvaluator[field=" + field + "]"; return "ToStringFromGeoPointEvaluator[" + "wkb=" + wkb + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToStringFromGeoShapeEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToStringFromGeoShapeEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToStringFromGeoShapeEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator wkb;
public ToStringFromGeoShapeEvaluator(Source source, EvalOperator.ExpressionEvaluator wkb,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.wkb = wkb;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToStringFromGeoShape"; return wkb;
} }
@Override @Override
@ -46,7 +50,7 @@ public final class ToStringFromGeoShapeEvaluator extends AbstractConvertFunction
} }
} }
private static BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToString.fromGeoShape(value); return ToString.fromGeoShape(value);
} }
@ -82,29 +86,39 @@ public final class ToStringFromGeoShapeEvaluator extends AbstractConvertFunction
} }
} }
private static BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToString.fromGeoShape(value); return ToString.fromGeoShape(value);
} }
@Override
public String toString() {
return "ToStringFromGeoShapeEvaluator[" + "wkb=" + wkb + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(wkb);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory wkb;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory wkb) {
this.field = field;
this.source = source; this.source = source;
this.wkb = wkb;
} }
@Override @Override
public ToStringFromGeoShapeEvaluator get(DriverContext context) { public ToStringFromGeoShapeEvaluator get(DriverContext context) {
return new ToStringFromGeoShapeEvaluator(field.get(context), source, context); return new ToStringFromGeoShapeEvaluator(source, wkb.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToStringFromGeoShapeEvaluator[field=" + field + "]"; return "ToStringFromGeoShapeEvaluator[" + "wkb=" + wkb + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToStringFromIPEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToStringFromIPEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToStringFromIPEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator ip;
public ToStringFromIPEvaluator(Source source, EvalOperator.ExpressionEvaluator ip,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.ip = ip;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToStringFromIP"; return ip;
} }
@Override @Override
@ -46,7 +50,7 @@ public final class ToStringFromIPEvaluator extends AbstractConvertFunction.Abstr
} }
} }
private static BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToString.fromIP(value); return ToString.fromIP(value);
} }
@ -82,29 +86,39 @@ public final class ToStringFromIPEvaluator extends AbstractConvertFunction.Abstr
} }
} }
private static BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToString.fromIP(value); return ToString.fromIP(value);
} }
@Override
public String toString() {
return "ToStringFromIPEvaluator[" + "ip=" + ip + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(ip);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory ip;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory ip) {
this.field = field;
this.source = source; this.source = source;
this.ip = ip;
} }
@Override @Override
public ToStringFromIPEvaluator get(DriverContext context) { public ToStringFromIPEvaluator get(DriverContext context) {
return new ToStringFromIPEvaluator(field.get(context), source, context); return new ToStringFromIPEvaluator(source, ip.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToStringFromIPEvaluator[field=" + field + "]"; return "ToStringFromIPEvaluator[" + "ip=" + ip + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.IntVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToStringFromIntEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToStringFromIntEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToStringFromIntEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator integer;
public ToStringFromIntEvaluator(Source source, EvalOperator.ExpressionEvaluator integer,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.integer = integer;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToStringFromInt"; return integer;
} }
@Override @Override
@ -46,7 +50,7 @@ public final class ToStringFromIntEvaluator extends AbstractConvertFunction.Abst
} }
} }
private static BytesRef evalValue(IntVector container, int index) { private BytesRef evalValue(IntVector container, int index) {
int value = container.getInt(index); int value = container.getInt(index);
return ToString.fromDouble(value); return ToString.fromDouble(value);
} }
@ -81,29 +85,39 @@ public final class ToStringFromIntEvaluator extends AbstractConvertFunction.Abst
} }
} }
private static BytesRef evalValue(IntBlock container, int index) { private BytesRef evalValue(IntBlock container, int index) {
int value = container.getInt(index); int value = container.getInt(index);
return ToString.fromDouble(value); return ToString.fromDouble(value);
} }
@Override
public String toString() {
return "ToStringFromIntEvaluator[" + "integer=" + integer + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(integer);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory integer;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory integer) {
this.field = field;
this.source = source; this.source = source;
this.integer = integer;
} }
@Override @Override
public ToStringFromIntEvaluator get(DriverContext context) { public ToStringFromIntEvaluator get(DriverContext context) {
return new ToStringFromIntEvaluator(field.get(context), source, context); return new ToStringFromIntEvaluator(source, integer.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToStringFromIntEvaluator[field=" + field + "]"; return "ToStringFromIntEvaluator[" + "integer=" + integer + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.LongVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToStringFromLongEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToStringFromLongEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToStringFromLongEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator lng;
public ToStringFromLongEvaluator(Source source, EvalOperator.ExpressionEvaluator lng,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.lng = lng;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToStringFromLong"; return lng;
} }
@Override @Override
@ -46,7 +50,7 @@ public final class ToStringFromLongEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static BytesRef evalValue(LongVector container, int index) { private BytesRef evalValue(LongVector container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToString.fromDouble(value); return ToString.fromDouble(value);
} }
@ -81,29 +85,39 @@ public final class ToStringFromLongEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static BytesRef evalValue(LongBlock container, int index) { private BytesRef evalValue(LongBlock container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToString.fromDouble(value); return ToString.fromDouble(value);
} }
@Override
public String toString() {
return "ToStringFromLongEvaluator[" + "lng=" + lng + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(lng);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory lng;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory lng) {
this.field = field;
this.source = source; this.source = source;
this.lng = lng;
} }
@Override @Override
public ToStringFromLongEvaluator get(DriverContext context) { public ToStringFromLongEvaluator get(DriverContext context) {
return new ToStringFromLongEvaluator(field.get(context), source, context); return new ToStringFromLongEvaluator(source, lng.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToStringFromLongEvaluator[field=" + field + "]"; return "ToStringFromLongEvaluator[" + "lng=" + lng + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.LongVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToStringFromUnsignedLongEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToStringFromUnsignedLongEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToStringFromUnsignedLongEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator lng;
public ToStringFromUnsignedLongEvaluator(Source source, EvalOperator.ExpressionEvaluator lng,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.lng = lng;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToStringFromUnsignedLong"; return lng;
} }
@Override @Override
@ -46,7 +50,7 @@ public final class ToStringFromUnsignedLongEvaluator extends AbstractConvertFunc
} }
} }
private static BytesRef evalValue(LongVector container, int index) { private BytesRef evalValue(LongVector container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToString.fromUnsignedLong(value); return ToString.fromUnsignedLong(value);
} }
@ -81,29 +85,39 @@ public final class ToStringFromUnsignedLongEvaluator extends AbstractConvertFunc
} }
} }
private static BytesRef evalValue(LongBlock container, int index) { private BytesRef evalValue(LongBlock container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToString.fromUnsignedLong(value); return ToString.fromUnsignedLong(value);
} }
@Override
public String toString() {
return "ToStringFromUnsignedLongEvaluator[" + "lng=" + lng + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(lng);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory lng;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory lng) {
this.field = field;
this.source = source; this.source = source;
this.lng = lng;
} }
@Override @Override
public ToStringFromUnsignedLongEvaluator get(DriverContext context) { public ToStringFromUnsignedLongEvaluator get(DriverContext context) {
return new ToStringFromUnsignedLongEvaluator(field.get(context), source, context); return new ToStringFromUnsignedLongEvaluator(source, lng.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToStringFromUnsignedLongEvaluator[field=" + field + "]"; return "ToStringFromUnsignedLongEvaluator[" + "lng=" + lng + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToStringFromVersionEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToStringFromVersionEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToStringFromVersionEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator version;
public ToStringFromVersionEvaluator(Source source, EvalOperator.ExpressionEvaluator version,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.version = version;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToStringFromVersion"; return version;
} }
@Override @Override
@ -46,7 +50,7 @@ public final class ToStringFromVersionEvaluator extends AbstractConvertFunction.
} }
} }
private static BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToString.fromVersion(value); return ToString.fromVersion(value);
} }
@ -82,29 +86,39 @@ public final class ToStringFromVersionEvaluator extends AbstractConvertFunction.
} }
} }
private static BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToString.fromVersion(value); return ToString.fromVersion(value);
} }
@Override
public String toString() {
return "ToStringFromVersionEvaluator[" + "version=" + version + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(version);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory version;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory version) {
this.field = field;
this.source = source; this.source = source;
this.version = version;
} }
@Override @Override
public ToStringFromVersionEvaluator get(DriverContext context) { public ToStringFromVersionEvaluator get(DriverContext context) {
return new ToStringFromVersionEvaluator(field.get(context), source, context); return new ToStringFromVersionEvaluator(source, version.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToStringFromVersionEvaluator[field=" + field + "]"; return "ToStringFromVersionEvaluator[" + "version=" + version + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.LongBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToUnsignedLongFromBooleanEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToUnsignedLongFromBooleanEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToUnsignedLongFromBooleanEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator bool;
public ToUnsignedLongFromBooleanEvaluator(Source source, EvalOperator.ExpressionEvaluator bool,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.bool = bool;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToUnsignedLongFromBoolean"; return bool;
} }
@Override @Override
@ -45,7 +49,7 @@ public final class ToUnsignedLongFromBooleanEvaluator extends AbstractConvertFun
} }
} }
private static long evalValue(BooleanVector container, int index) { private long evalValue(BooleanVector container, int index) {
boolean value = container.getBoolean(index); boolean value = container.getBoolean(index);
return ToUnsignedLong.fromBoolean(value); return ToUnsignedLong.fromBoolean(value);
} }
@ -80,29 +84,39 @@ public final class ToUnsignedLongFromBooleanEvaluator extends AbstractConvertFun
} }
} }
private static long evalValue(BooleanBlock container, int index) { private long evalValue(BooleanBlock container, int index) {
boolean value = container.getBoolean(index); boolean value = container.getBoolean(index);
return ToUnsignedLong.fromBoolean(value); return ToUnsignedLong.fromBoolean(value);
} }
@Override
public String toString() {
return "ToUnsignedLongFromBooleanEvaluator[" + "bool=" + bool + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(bool);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory bool;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory bool) {
this.field = field;
this.source = source; this.source = source;
this.bool = bool;
} }
@Override @Override
public ToUnsignedLongFromBooleanEvaluator get(DriverContext context) { public ToUnsignedLongFromBooleanEvaluator get(DriverContext context) {
return new ToUnsignedLongFromBooleanEvaluator(field.get(context), source, context); return new ToUnsignedLongFromBooleanEvaluator(source, bool.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToUnsignedLongFromBooleanEvaluator[field=" + field + "]"; return "ToUnsignedLongFromBooleanEvaluator[" + "bool=" + bool + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.LongBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.InvalidArgumentException; import org.elasticsearch.xpack.esql.core.InvalidArgumentException;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToUnsignedLongFromDoubleEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToUnsignedLongFromDoubleEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToUnsignedLongFromDoubleEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator dbl;
public ToUnsignedLongFromDoubleEvaluator(Source source, EvalOperator.ExpressionEvaluator dbl,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.dbl = dbl;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToUnsignedLongFromDouble"; return dbl;
} }
@Override @Override
@ -56,7 +60,7 @@ public final class ToUnsignedLongFromDoubleEvaluator extends AbstractConvertFunc
} }
} }
private static long evalValue(DoubleVector container, int index) { private long evalValue(DoubleVector container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToUnsignedLong.fromDouble(value); return ToUnsignedLong.fromDouble(value);
} }
@ -95,29 +99,39 @@ public final class ToUnsignedLongFromDoubleEvaluator extends AbstractConvertFunc
} }
} }
private static long evalValue(DoubleBlock container, int index) { private long evalValue(DoubleBlock container, int index) {
double value = container.getDouble(index); double value = container.getDouble(index);
return ToUnsignedLong.fromDouble(value); return ToUnsignedLong.fromDouble(value);
} }
@Override
public String toString() {
return "ToUnsignedLongFromDoubleEvaluator[" + "dbl=" + dbl + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(dbl);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory dbl;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory dbl) {
this.field = field;
this.source = source; this.source = source;
this.dbl = dbl;
} }
@Override @Override
public ToUnsignedLongFromDoubleEvaluator get(DriverContext context) { public ToUnsignedLongFromDoubleEvaluator get(DriverContext context) {
return new ToUnsignedLongFromDoubleEvaluator(field.get(context), source, context); return new ToUnsignedLongFromDoubleEvaluator(source, dbl.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToUnsignedLongFromDoubleEvaluator[field=" + field + "]"; return "ToUnsignedLongFromDoubleEvaluator[" + "dbl=" + dbl + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.LongBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.InvalidArgumentException; import org.elasticsearch.xpack.esql.core.InvalidArgumentException;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
@ -21,14 +22,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToUnsignedLongFromIntEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToUnsignedLongFromIntEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToUnsignedLongFromIntEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator i;
public ToUnsignedLongFromIntEvaluator(Source source, EvalOperator.ExpressionEvaluator i,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.i = i;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToUnsignedLongFromInt"; return i;
} }
@Override @Override
@ -56,7 +60,7 @@ public final class ToUnsignedLongFromIntEvaluator extends AbstractConvertFunctio
} }
} }
private static long evalValue(IntVector container, int index) { private long evalValue(IntVector container, int index) {
int value = container.getInt(index); int value = container.getInt(index);
return ToUnsignedLong.fromInt(value); return ToUnsignedLong.fromInt(value);
} }
@ -95,29 +99,39 @@ public final class ToUnsignedLongFromIntEvaluator extends AbstractConvertFunctio
} }
} }
private static long evalValue(IntBlock container, int index) { private long evalValue(IntBlock container, int index) {
int value = container.getInt(index); int value = container.getInt(index);
return ToUnsignedLong.fromInt(value); return ToUnsignedLong.fromInt(value);
} }
@Override
public String toString() {
return "ToUnsignedLongFromIntEvaluator[" + "i=" + i + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(i);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory i;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory i) {
this.field = field;
this.source = source; this.source = source;
this.i = i;
} }
@Override @Override
public ToUnsignedLongFromIntEvaluator get(DriverContext context) { public ToUnsignedLongFromIntEvaluator get(DriverContext context) {
return new ToUnsignedLongFromIntEvaluator(field.get(context), source, context); return new ToUnsignedLongFromIntEvaluator(source, i.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToUnsignedLongFromIntEvaluator[field=" + field + "]"; return "ToUnsignedLongFromIntEvaluator[" + "i=" + i + "]";
} }
} }
} }

View file

@ -12,6 +12,7 @@ import org.elasticsearch.compute.data.LongVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.InvalidArgumentException; import org.elasticsearch.xpack.esql.core.InvalidArgumentException;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToUnsignedLongFromLongEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToUnsignedLongFromLongEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToUnsignedLongFromLongEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator lng;
public ToUnsignedLongFromLongEvaluator(Source source, EvalOperator.ExpressionEvaluator lng,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.lng = lng;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToUnsignedLongFromLong"; return lng;
} }
@Override @Override
@ -55,7 +59,7 @@ public final class ToUnsignedLongFromLongEvaluator extends AbstractConvertFuncti
} }
} }
private static long evalValue(LongVector container, int index) { private long evalValue(LongVector container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToUnsignedLong.fromLong(value); return ToUnsignedLong.fromLong(value);
} }
@ -94,29 +98,39 @@ public final class ToUnsignedLongFromLongEvaluator extends AbstractConvertFuncti
} }
} }
private static long evalValue(LongBlock container, int index) { private long evalValue(LongBlock container, int index) {
long value = container.getLong(index); long value = container.getLong(index);
return ToUnsignedLong.fromLong(value); return ToUnsignedLong.fromLong(value);
} }
@Override
public String toString() {
return "ToUnsignedLongFromLongEvaluator[" + "lng=" + lng + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(lng);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory lng;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory lng) {
this.field = field;
this.source = source; this.source = source;
this.lng = lng;
} }
@Override @Override
public ToUnsignedLongFromLongEvaluator get(DriverContext context) { public ToUnsignedLongFromLongEvaluator get(DriverContext context) {
return new ToUnsignedLongFromLongEvaluator(field.get(context), source, context); return new ToUnsignedLongFromLongEvaluator(source, lng.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToUnsignedLongFromLongEvaluator[field=" + field + "]"; return "ToUnsignedLongFromLongEvaluator[" + "lng=" + lng + "]";
} }
} }
} }

View file

@ -15,6 +15,7 @@ import org.elasticsearch.compute.data.LongBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.InvalidArgumentException; import org.elasticsearch.xpack.esql.core.InvalidArgumentException;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
@ -23,14 +24,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToUnsignedLongFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToUnsignedLongFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToUnsignedLongFromStringEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public ToUnsignedLongFromStringEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToUnsignedLongFromString"; return in;
} }
@Override @Override
@ -59,7 +63,7 @@ public final class ToUnsignedLongFromStringEvaluator extends AbstractConvertFunc
} }
} }
private static long evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private long evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToUnsignedLong.fromKeyword(value); return ToUnsignedLong.fromKeyword(value);
} }
@ -99,29 +103,39 @@ public final class ToUnsignedLongFromStringEvaluator extends AbstractConvertFunc
} }
} }
private static long evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private long evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToUnsignedLong.fromKeyword(value); return ToUnsignedLong.fromKeyword(value);
} }
@Override
public String toString() {
return "ToUnsignedLongFromStringEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public ToUnsignedLongFromStringEvaluator get(DriverContext context) { public ToUnsignedLongFromStringEvaluator get(DriverContext context) {
return new ToUnsignedLongFromStringEvaluator(field.get(context), source, context); return new ToUnsignedLongFromStringEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToUnsignedLongFromStringEvaluator[field=" + field + "]"; return "ToUnsignedLongFromStringEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -13,6 +13,7 @@ import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
/** /**
@ -20,14 +21,17 @@ import org.elasticsearch.xpack.esql.core.tree.Source;
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ToVersionFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class ToVersionFromStringEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToVersionFromStringEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator asString;
public ToVersionFromStringEvaluator(Source source, EvalOperator.ExpressionEvaluator asString,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.asString = asString;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "ToVersionFromString"; return asString;
} }
@Override @Override
@ -46,7 +50,7 @@ public final class ToVersionFromStringEvaluator extends AbstractConvertFunction.
} }
} }
private static BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToVersion.fromKeyword(value); return ToVersion.fromKeyword(value);
} }
@ -82,29 +86,39 @@ public final class ToVersionFromStringEvaluator extends AbstractConvertFunction.
} }
} }
private static BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return ToVersion.fromKeyword(value); return ToVersion.fromKeyword(value);
} }
@Override
public String toString() {
return "ToVersionFromStringEvaluator[" + "asString=" + asString + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(asString);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory asString;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory asString) {
this.field = field;
this.source = source; this.source = source;
this.asString = asString;
} }
@Override @Override
public ToVersionFromStringEvaluator get(DriverContext context) { public ToVersionFromStringEvaluator get(DriverContext context) {
return new ToVersionFromStringEvaluator(field.get(context), source, context); return new ToVersionFromStringEvaluator(source, asString.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "ToVersionFromStringEvaluator[field=" + field + "]"; return "ToVersionFromStringEvaluator[" + "asString=" + asString + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction; import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction;
@ -22,14 +23,17 @@ import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractC
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class StEnvelopeFromWKBEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class StEnvelopeFromWKBEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public StEnvelopeFromWKBEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator wkb;
public StEnvelopeFromWKBEvaluator(Source source, EvalOperator.ExpressionEvaluator wkb,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.wkb = wkb;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "StEnvelopeFromWKB"; return wkb;
} }
@Override @Override
@ -58,7 +62,7 @@ public final class StEnvelopeFromWKBEvaluator extends AbstractConvertFunction.Ab
} }
} }
private static BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StEnvelope.fromWellKnownBinary(value); return StEnvelope.fromWellKnownBinary(value);
} }
@ -98,29 +102,39 @@ public final class StEnvelopeFromWKBEvaluator extends AbstractConvertFunction.Ab
} }
} }
private static BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StEnvelope.fromWellKnownBinary(value); return StEnvelope.fromWellKnownBinary(value);
} }
@Override
public String toString() {
return "StEnvelopeFromWKBEvaluator[" + "wkb=" + wkb + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(wkb);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory wkb;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory wkb) {
this.field = field;
this.source = source; this.source = source;
this.wkb = wkb;
} }
@Override @Override
public StEnvelopeFromWKBEvaluator get(DriverContext context) { public StEnvelopeFromWKBEvaluator get(DriverContext context) {
return new StEnvelopeFromWKBEvaluator(field.get(context), source, context); return new StEnvelopeFromWKBEvaluator(source, wkb.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "StEnvelopeFromWKBEvaluator[field=" + field + "]"; return "StEnvelopeFromWKBEvaluator[" + "wkb=" + wkb + "]";
} }
} }
} }

View file

@ -14,6 +14,7 @@ import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction; import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction;
@ -22,14 +23,17 @@ import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractC
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class StEnvelopeFromWKBGeoEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class StEnvelopeFromWKBGeoEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public StEnvelopeFromWKBGeoEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator wkb;
public StEnvelopeFromWKBGeoEvaluator(Source source, EvalOperator.ExpressionEvaluator wkb,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.wkb = wkb;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "StEnvelopeFromWKBGeo"; return wkb;
} }
@Override @Override
@ -58,7 +62,7 @@ public final class StEnvelopeFromWKBGeoEvaluator extends AbstractConvertFunction
} }
} }
private static BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StEnvelope.fromWellKnownBinaryGeo(value); return StEnvelope.fromWellKnownBinaryGeo(value);
} }
@ -98,29 +102,39 @@ public final class StEnvelopeFromWKBGeoEvaluator extends AbstractConvertFunction
} }
} }
private static BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StEnvelope.fromWellKnownBinaryGeo(value); return StEnvelope.fromWellKnownBinaryGeo(value);
} }
@Override
public String toString() {
return "StEnvelopeFromWKBGeoEvaluator[" + "wkb=" + wkb + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(wkb);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory wkb;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory wkb) {
this.field = field;
this.source = source; this.source = source;
this.wkb = wkb;
} }
@Override @Override
public StEnvelopeFromWKBGeoEvaluator get(DriverContext context) { public StEnvelopeFromWKBGeoEvaluator get(DriverContext context) {
return new StEnvelopeFromWKBGeoEvaluator(field.get(context), source, context); return new StEnvelopeFromWKBGeoEvaluator(source, wkb.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "StEnvelopeFromWKBGeoEvaluator[field=" + field + "]"; return "StEnvelopeFromWKBGeoEvaluator[" + "wkb=" + wkb + "]";
} }
} }
} }

View file

@ -15,6 +15,7 @@ import org.elasticsearch.compute.data.DoubleBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction; import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction;
@ -23,14 +24,17 @@ import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractC
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class StXFromWKBEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class StXFromWKBEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public StXFromWKBEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public StXFromWKBEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "StXFromWKB"; return in;
} }
@Override @Override
@ -59,7 +63,7 @@ public final class StXFromWKBEvaluator extends AbstractConvertFunction.AbstractE
} }
} }
private static double evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private double evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StX.fromWellKnownBinary(value); return StX.fromWellKnownBinary(value);
} }
@ -99,29 +103,39 @@ public final class StXFromWKBEvaluator extends AbstractConvertFunction.AbstractE
} }
} }
private static double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StX.fromWellKnownBinary(value); return StX.fromWellKnownBinary(value);
} }
@Override
public String toString() {
return "StXFromWKBEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public StXFromWKBEvaluator get(DriverContext context) { public StXFromWKBEvaluator get(DriverContext context) {
return new StXFromWKBEvaluator(field.get(context), source, context); return new StXFromWKBEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "StXFromWKBEvaluator[field=" + field + "]"; return "StXFromWKBEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -15,6 +15,7 @@ import org.elasticsearch.compute.data.DoubleBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction; import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction;
@ -23,14 +24,17 @@ import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractC
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class StXMaxFromWKBEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class StXMaxFromWKBEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public StXMaxFromWKBEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator wkb;
public StXMaxFromWKBEvaluator(Source source, EvalOperator.ExpressionEvaluator wkb,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.wkb = wkb;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "StXMaxFromWKB"; return wkb;
} }
@Override @Override
@ -59,7 +63,7 @@ public final class StXMaxFromWKBEvaluator extends AbstractConvertFunction.Abstra
} }
} }
private static double evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private double evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StXMax.fromWellKnownBinary(value); return StXMax.fromWellKnownBinary(value);
} }
@ -99,29 +103,39 @@ public final class StXMaxFromWKBEvaluator extends AbstractConvertFunction.Abstra
} }
} }
private static double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StXMax.fromWellKnownBinary(value); return StXMax.fromWellKnownBinary(value);
} }
@Override
public String toString() {
return "StXMaxFromWKBEvaluator[" + "wkb=" + wkb + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(wkb);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory wkb;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory wkb) {
this.field = field;
this.source = source; this.source = source;
this.wkb = wkb;
} }
@Override @Override
public StXMaxFromWKBEvaluator get(DriverContext context) { public StXMaxFromWKBEvaluator get(DriverContext context) {
return new StXMaxFromWKBEvaluator(field.get(context), source, context); return new StXMaxFromWKBEvaluator(source, wkb.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "StXMaxFromWKBEvaluator[field=" + field + "]"; return "StXMaxFromWKBEvaluator[" + "wkb=" + wkb + "]";
} }
} }
} }

View file

@ -15,6 +15,7 @@ import org.elasticsearch.compute.data.DoubleBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction; import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction;
@ -23,14 +24,17 @@ import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractC
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class StXMaxFromWKBGeoEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class StXMaxFromWKBGeoEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public StXMaxFromWKBGeoEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator wkb;
public StXMaxFromWKBGeoEvaluator(Source source, EvalOperator.ExpressionEvaluator wkb,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.wkb = wkb;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "StXMaxFromWKBGeo"; return wkb;
} }
@Override @Override
@ -59,7 +63,7 @@ public final class StXMaxFromWKBGeoEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static double evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private double evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StXMax.fromWellKnownBinaryGeo(value); return StXMax.fromWellKnownBinaryGeo(value);
} }
@ -99,29 +103,39 @@ public final class StXMaxFromWKBGeoEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StXMax.fromWellKnownBinaryGeo(value); return StXMax.fromWellKnownBinaryGeo(value);
} }
@Override
public String toString() {
return "StXMaxFromWKBGeoEvaluator[" + "wkb=" + wkb + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(wkb);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory wkb;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory wkb) {
this.field = field;
this.source = source; this.source = source;
this.wkb = wkb;
} }
@Override @Override
public StXMaxFromWKBGeoEvaluator get(DriverContext context) { public StXMaxFromWKBGeoEvaluator get(DriverContext context) {
return new StXMaxFromWKBGeoEvaluator(field.get(context), source, context); return new StXMaxFromWKBGeoEvaluator(source, wkb.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "StXMaxFromWKBGeoEvaluator[field=" + field + "]"; return "StXMaxFromWKBGeoEvaluator[" + "wkb=" + wkb + "]";
} }
} }
} }

View file

@ -15,6 +15,7 @@ import org.elasticsearch.compute.data.DoubleBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction; import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction;
@ -23,14 +24,17 @@ import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractC
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class StXMinFromWKBEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class StXMinFromWKBEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public StXMinFromWKBEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator wkb;
public StXMinFromWKBEvaluator(Source source, EvalOperator.ExpressionEvaluator wkb,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.wkb = wkb;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "StXMinFromWKB"; return wkb;
} }
@Override @Override
@ -59,7 +63,7 @@ public final class StXMinFromWKBEvaluator extends AbstractConvertFunction.Abstra
} }
} }
private static double evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private double evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StXMin.fromWellKnownBinary(value); return StXMin.fromWellKnownBinary(value);
} }
@ -99,29 +103,39 @@ public final class StXMinFromWKBEvaluator extends AbstractConvertFunction.Abstra
} }
} }
private static double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StXMin.fromWellKnownBinary(value); return StXMin.fromWellKnownBinary(value);
} }
@Override
public String toString() {
return "StXMinFromWKBEvaluator[" + "wkb=" + wkb + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(wkb);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory wkb;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory wkb) {
this.field = field;
this.source = source; this.source = source;
this.wkb = wkb;
} }
@Override @Override
public StXMinFromWKBEvaluator get(DriverContext context) { public StXMinFromWKBEvaluator get(DriverContext context) {
return new StXMinFromWKBEvaluator(field.get(context), source, context); return new StXMinFromWKBEvaluator(source, wkb.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "StXMinFromWKBEvaluator[field=" + field + "]"; return "StXMinFromWKBEvaluator[" + "wkb=" + wkb + "]";
} }
} }
} }

View file

@ -15,6 +15,7 @@ import org.elasticsearch.compute.data.DoubleBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction; import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction;
@ -23,14 +24,17 @@ import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractC
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class StXMinFromWKBGeoEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class StXMinFromWKBGeoEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public StXMinFromWKBGeoEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator wkb;
public StXMinFromWKBGeoEvaluator(Source source, EvalOperator.ExpressionEvaluator wkb,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.wkb = wkb;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "StXMinFromWKBGeo"; return wkb;
} }
@Override @Override
@ -59,7 +63,7 @@ public final class StXMinFromWKBGeoEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static double evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private double evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StXMin.fromWellKnownBinaryGeo(value); return StXMin.fromWellKnownBinaryGeo(value);
} }
@ -99,29 +103,39 @@ public final class StXMinFromWKBGeoEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StXMin.fromWellKnownBinaryGeo(value); return StXMin.fromWellKnownBinaryGeo(value);
} }
@Override
public String toString() {
return "StXMinFromWKBGeoEvaluator[" + "wkb=" + wkb + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(wkb);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory wkb;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory wkb) {
this.field = field;
this.source = source; this.source = source;
this.wkb = wkb;
} }
@Override @Override
public StXMinFromWKBGeoEvaluator get(DriverContext context) { public StXMinFromWKBGeoEvaluator get(DriverContext context) {
return new StXMinFromWKBGeoEvaluator(field.get(context), source, context); return new StXMinFromWKBGeoEvaluator(source, wkb.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "StXMinFromWKBGeoEvaluator[field=" + field + "]"; return "StXMinFromWKBGeoEvaluator[" + "wkb=" + wkb + "]";
} }
} }
} }

View file

@ -15,6 +15,7 @@ import org.elasticsearch.compute.data.DoubleBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction; import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction;
@ -23,14 +24,17 @@ import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractC
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class StYFromWKBEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class StYFromWKBEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public StYFromWKBEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator in;
public StYFromWKBEvaluator(Source source, EvalOperator.ExpressionEvaluator in,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.in = in;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "StYFromWKB"; return in;
} }
@Override @Override
@ -59,7 +63,7 @@ public final class StYFromWKBEvaluator extends AbstractConvertFunction.AbstractE
} }
} }
private static double evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private double evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StY.fromWellKnownBinary(value); return StY.fromWellKnownBinary(value);
} }
@ -99,29 +103,39 @@ public final class StYFromWKBEvaluator extends AbstractConvertFunction.AbstractE
} }
} }
private static double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StY.fromWellKnownBinary(value); return StY.fromWellKnownBinary(value);
} }
@Override
public String toString() {
return "StYFromWKBEvaluator[" + "in=" + in + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(in);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory in;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory in) {
this.field = field;
this.source = source; this.source = source;
this.in = in;
} }
@Override @Override
public StYFromWKBEvaluator get(DriverContext context) { public StYFromWKBEvaluator get(DriverContext context) {
return new StYFromWKBEvaluator(field.get(context), source, context); return new StYFromWKBEvaluator(source, in.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "StYFromWKBEvaluator[field=" + field + "]"; return "StYFromWKBEvaluator[" + "in=" + in + "]";
} }
} }
} }

View file

@ -15,6 +15,7 @@ import org.elasticsearch.compute.data.DoubleBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction; import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction;
@ -23,14 +24,17 @@ import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractC
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class StYMaxFromWKBEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class StYMaxFromWKBEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public StYMaxFromWKBEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator wkb;
public StYMaxFromWKBEvaluator(Source source, EvalOperator.ExpressionEvaluator wkb,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.wkb = wkb;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "StYMaxFromWKB"; return wkb;
} }
@Override @Override
@ -59,7 +63,7 @@ public final class StYMaxFromWKBEvaluator extends AbstractConvertFunction.Abstra
} }
} }
private static double evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private double evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StYMax.fromWellKnownBinary(value); return StYMax.fromWellKnownBinary(value);
} }
@ -99,29 +103,39 @@ public final class StYMaxFromWKBEvaluator extends AbstractConvertFunction.Abstra
} }
} }
private static double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StYMax.fromWellKnownBinary(value); return StYMax.fromWellKnownBinary(value);
} }
@Override
public String toString() {
return "StYMaxFromWKBEvaluator[" + "wkb=" + wkb + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(wkb);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory wkb;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory wkb) {
this.field = field;
this.source = source; this.source = source;
this.wkb = wkb;
} }
@Override @Override
public StYMaxFromWKBEvaluator get(DriverContext context) { public StYMaxFromWKBEvaluator get(DriverContext context) {
return new StYMaxFromWKBEvaluator(field.get(context), source, context); return new StYMaxFromWKBEvaluator(source, wkb.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "StYMaxFromWKBEvaluator[field=" + field + "]"; return "StYMaxFromWKBEvaluator[" + "wkb=" + wkb + "]";
} }
} }
} }

View file

@ -15,6 +15,7 @@ import org.elasticsearch.compute.data.DoubleBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction; import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction;
@ -23,14 +24,17 @@ import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractC
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class StYMaxFromWKBGeoEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class StYMaxFromWKBGeoEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public StYMaxFromWKBGeoEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator wkb;
public StYMaxFromWKBGeoEvaluator(Source source, EvalOperator.ExpressionEvaluator wkb,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.wkb = wkb;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "StYMaxFromWKBGeo"; return wkb;
} }
@Override @Override
@ -59,7 +63,7 @@ public final class StYMaxFromWKBGeoEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static double evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private double evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StYMax.fromWellKnownBinaryGeo(value); return StYMax.fromWellKnownBinaryGeo(value);
} }
@ -99,29 +103,39 @@ public final class StYMaxFromWKBGeoEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StYMax.fromWellKnownBinaryGeo(value); return StYMax.fromWellKnownBinaryGeo(value);
} }
@Override
public String toString() {
return "StYMaxFromWKBGeoEvaluator[" + "wkb=" + wkb + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(wkb);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory wkb;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory wkb) {
this.field = field;
this.source = source; this.source = source;
this.wkb = wkb;
} }
@Override @Override
public StYMaxFromWKBGeoEvaluator get(DriverContext context) { public StYMaxFromWKBGeoEvaluator get(DriverContext context) {
return new StYMaxFromWKBGeoEvaluator(field.get(context), source, context); return new StYMaxFromWKBGeoEvaluator(source, wkb.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "StYMaxFromWKBGeoEvaluator[field=" + field + "]"; return "StYMaxFromWKBGeoEvaluator[" + "wkb=" + wkb + "]";
} }
} }
} }

View file

@ -15,6 +15,7 @@ import org.elasticsearch.compute.data.DoubleBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction; import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction;
@ -23,14 +24,17 @@ import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractC
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class StYMinFromWKBEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class StYMinFromWKBEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public StYMinFromWKBEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator wkb;
public StYMinFromWKBEvaluator(Source source, EvalOperator.ExpressionEvaluator wkb,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.wkb = wkb;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "StYMinFromWKB"; return wkb;
} }
@Override @Override
@ -59,7 +63,7 @@ public final class StYMinFromWKBEvaluator extends AbstractConvertFunction.Abstra
} }
} }
private static double evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private double evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StYMin.fromWellKnownBinary(value); return StYMin.fromWellKnownBinary(value);
} }
@ -99,29 +103,39 @@ public final class StYMinFromWKBEvaluator extends AbstractConvertFunction.Abstra
} }
} }
private static double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StYMin.fromWellKnownBinary(value); return StYMin.fromWellKnownBinary(value);
} }
@Override
public String toString() {
return "StYMinFromWKBEvaluator[" + "wkb=" + wkb + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(wkb);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory wkb;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory wkb) {
this.field = field;
this.source = source; this.source = source;
this.wkb = wkb;
} }
@Override @Override
public StYMinFromWKBEvaluator get(DriverContext context) { public StYMinFromWKBEvaluator get(DriverContext context) {
return new StYMinFromWKBEvaluator(field.get(context), source, context); return new StYMinFromWKBEvaluator(source, wkb.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "StYMinFromWKBEvaluator[field=" + field + "]"; return "StYMinFromWKBEvaluator[" + "wkb=" + wkb + "]";
} }
} }
} }

View file

@ -15,6 +15,7 @@ import org.elasticsearch.compute.data.DoubleBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction; import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction;
@ -23,14 +24,17 @@ import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractC
* This class is generated. Edit {@code ConvertEvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class StYMinFromWKBGeoEvaluator extends AbstractConvertFunction.AbstractEvaluator { public final class StYMinFromWKBGeoEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public StYMinFromWKBGeoEvaluator(EvalOperator.ExpressionEvaluator field, Source source, private final EvalOperator.ExpressionEvaluator wkb;
public StYMinFromWKBGeoEvaluator(Source source, EvalOperator.ExpressionEvaluator wkb,
DriverContext driverContext) { DriverContext driverContext) {
super(driverContext, field, source); super(driverContext, source);
this.wkb = wkb;
} }
@Override @Override
public String name() { public EvalOperator.ExpressionEvaluator next() {
return "StYMinFromWKBGeo"; return wkb;
} }
@Override @Override
@ -59,7 +63,7 @@ public final class StYMinFromWKBGeoEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static double evalValue(BytesRefVector container, int index, BytesRef scratchPad) { private double evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StYMin.fromWellKnownBinaryGeo(value); return StYMin.fromWellKnownBinaryGeo(value);
} }
@ -99,29 +103,39 @@ public final class StYMinFromWKBGeoEvaluator extends AbstractConvertFunction.Abs
} }
} }
private static double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) { private double evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
BytesRef value = container.getBytesRef(index, scratchPad); BytesRef value = container.getBytesRef(index, scratchPad);
return StYMin.fromWellKnownBinaryGeo(value); return StYMin.fromWellKnownBinaryGeo(value);
} }
@Override
public String toString() {
return "StYMinFromWKBGeoEvaluator[" + "wkb=" + wkb + "]";
}
@Override
public void close() {
Releasables.closeExpectNoException(wkb);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory wkb;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory wkb) {
this.field = field;
this.source = source; this.source = source;
this.wkb = wkb;
} }
@Override @Override
public StYMinFromWKBGeoEvaluator get(DriverContext context) { public StYMinFromWKBGeoEvaluator get(DriverContext context) {
return new StYMinFromWKBGeoEvaluator(field.get(context), source, context); return new StYMinFromWKBGeoEvaluator(source, wkb.get(context), context);
} }
@Override @Override
public String toString() { public String toString() {
return "StYMinFromWKBGeoEvaluator[field=" + field + "]"; return "StYMinFromWKBGeoEvaluator[" + "wkb=" + wkb + "]";
} }
} }
} }

View file

@ -4,7 +4,6 @@
// 2.0. // 2.0.
package org.elasticsearch.xpack.esql.expression.function.scalar.string; package org.elasticsearch.xpack.esql.expression.function.scalar.string;
import java.lang.IllegalArgumentException;
import java.lang.Override; import java.lang.Override;
import java.lang.String; import java.lang.String;
import java.util.Locale; import java.util.Locale;
@ -12,79 +11,92 @@ import org.apache.lucene.util.BytesRef;
import org.elasticsearch.compute.data.Block; import org.elasticsearch.compute.data.Block;
import org.elasticsearch.compute.data.BytesRefBlock; import org.elasticsearch.compute.data.BytesRefBlock;
import org.elasticsearch.compute.data.BytesRefVector; import org.elasticsearch.compute.data.BytesRefVector;
import org.elasticsearch.compute.data.Page; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.compute.operator.Warnings;
import org.elasticsearch.core.Releasables; import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
import org.elasticsearch.xpack.esql.expression.function.scalar.convert.AbstractConvertFunction;
/** /**
* {@link EvalOperator.ExpressionEvaluator} implementation for {@link ChangeCase}. * {@link EvalOperator.ExpressionEvaluator} implementation for {@link ChangeCase}.
* This class is generated. Edit {@code EvaluatorImplementer} instead. * This class is generated. Edit {@code ConvertEvaluatorImplementer} instead.
*/ */
public final class ChangeCaseEvaluator implements EvalOperator.ExpressionEvaluator { public final class ChangeCaseEvaluator extends AbstractConvertFunction.AbstractEvaluator {
private final Source source;
private final EvalOperator.ExpressionEvaluator val; private final EvalOperator.ExpressionEvaluator val;
private final Locale locale; private final Locale locale;
private final ChangeCase.Case caseType; private final ChangeCase.Case caseType;
private final DriverContext driverContext;
private Warnings warnings;
public ChangeCaseEvaluator(Source source, EvalOperator.ExpressionEvaluator val, Locale locale, public ChangeCaseEvaluator(Source source, EvalOperator.ExpressionEvaluator val, Locale locale,
ChangeCase.Case caseType, DriverContext driverContext) { ChangeCase.Case caseType, DriverContext driverContext) {
this.source = source; super(driverContext, source);
this.val = val; this.val = val;
this.locale = locale; this.locale = locale;
this.caseType = caseType; this.caseType = caseType;
this.driverContext = driverContext;
} }
@Override @Override
public Block eval(Page page) { public EvalOperator.ExpressionEvaluator next() {
try (BytesRefBlock valBlock = (BytesRefBlock) val.eval(page)) { return val;
BytesRefVector valVector = valBlock.asVector();
if (valVector == null) {
return eval(page.getPositionCount(), valBlock);
} }
return eval(page.getPositionCount(), valVector).asBlock();
@Override
public Block evalVector(Vector v) {
BytesRefVector vector = (BytesRefVector) v;
int positionCount = v.getPositionCount();
BytesRef scratchPad = new BytesRef();
if (vector.isConstant()) {
return driverContext.blockFactory().newConstantBytesRefBlockWith(evalValue(vector, 0, scratchPad), positionCount);
}
try (BytesRefBlock.Builder builder = driverContext.blockFactory().newBytesRefBlockBuilder(positionCount)) {
for (int p = 0; p < positionCount; p++) {
builder.appendBytesRef(evalValue(vector, p, scratchPad));
}
return builder.build();
} }
} }
public BytesRefBlock eval(int positionCount, BytesRefBlock valBlock) { private BytesRef evalValue(BytesRefVector container, int index, BytesRef scratchPad) {
try(BytesRefBlock.Builder result = driverContext.blockFactory().newBytesRefBlockBuilder(positionCount)) { BytesRef value = container.getBytesRef(index, scratchPad);
BytesRef valScratch = new BytesRef(); return ChangeCase.process(value, this.locale, this.caseType);
position: for (int p = 0; p < positionCount; p++) {
if (valBlock.isNull(p)) {
result.appendNull();
continue position;
} }
if (valBlock.getValueCount(p) != 1) {
if (valBlock.getValueCount(p) > 1) { @Override
warnings().registerException(new IllegalArgumentException("single-value function encountered multi-value")); public Block evalBlock(Block b) {
BytesRefBlock block = (BytesRefBlock) b;
int positionCount = block.getPositionCount();
try (BytesRefBlock.Builder builder = driverContext.blockFactory().newBytesRefBlockBuilder(positionCount)) {
BytesRef scratchPad = new BytesRef();
for (int p = 0; p < positionCount; p++) {
int valueCount = block.getValueCount(p);
int start = block.getFirstValueIndex(p);
int end = start + valueCount;
boolean positionOpened = false;
boolean valuesAppended = false;
for (int i = start; i < end; i++) {
BytesRef value = evalValue(block, i, scratchPad);
if (positionOpened == false && valueCount > 1) {
builder.beginPositionEntry();
positionOpened = true;
} }
result.appendNull(); builder.appendBytesRef(value);
continue position; valuesAppended = true;
} }
result.appendBytesRef(ChangeCase.process(valBlock.getBytesRef(valBlock.getFirstValueIndex(p), valScratch), this.locale, this.caseType)); if (valuesAppended == false) {
builder.appendNull();
} else if (positionOpened) {
builder.endPositionEntry();
} }
return result.build(); }
return builder.build();
} }
} }
public BytesRefVector eval(int positionCount, BytesRefVector valVector) { private BytesRef evalValue(BytesRefBlock container, int index, BytesRef scratchPad) {
try(BytesRefVector.Builder result = driverContext.blockFactory().newBytesRefVectorBuilder(positionCount)) { BytesRef value = container.getBytesRef(index, scratchPad);
BytesRef valScratch = new BytesRef(); return ChangeCase.process(value, this.locale, this.caseType);
position: for (int p = 0; p < positionCount; p++) {
result.appendBytesRef(ChangeCase.process(valVector.getBytesRef(p, valScratch), this.locale, this.caseType));
}
return result.build();
}
} }
@Override @Override
@ -97,19 +109,7 @@ public final class ChangeCaseEvaluator implements EvalOperator.ExpressionEvaluat
Releasables.closeExpectNoException(val); Releasables.closeExpectNoException(val);
} }
private Warnings warnings() { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
if (warnings == null) {
this.warnings = Warnings.createWarnings(
driverContext.warningsMode(),
source.source().getLineNumber(),
source.source().getColumnNumber(),
source.text()
);
}
return warnings;
}
static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory val; private final EvalOperator.ExpressionEvaluator.Factory val;

View file

@ -875,7 +875,12 @@ public class EsqlCapabilities {
/** /**
* Full text functions can be scored when being part of a disjunction * Full text functions can be scored when being part of a disjunction
*/ */
FULL_TEXT_FUNCTIONS_DISJUNCTIONS_SCORE; FULL_TEXT_FUNCTIONS_DISJUNCTIONS_SCORE,
/**
* Do {@code TO_LOWER} and {@code TO_UPPER} process all field values?
*/
TO_LOWER_MV;
private final boolean enabled; private final boolean enabled;

View file

@ -19,7 +19,6 @@ import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.compute.operator.EvalOperator.ExpressionEvaluator; import org.elasticsearch.compute.operator.EvalOperator.ExpressionEvaluator;
import org.elasticsearch.compute.operator.Warnings; import org.elasticsearch.compute.operator.Warnings;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.EsqlIllegalArgumentException; import org.elasticsearch.xpack.esql.EsqlIllegalArgumentException;
import org.elasticsearch.xpack.esql.core.expression.Expression; import org.elasticsearch.xpack.esql.core.expression.Expression;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
@ -66,7 +65,7 @@ public abstract class AbstractConvertFunction extends UnaryScalarFunction {
if (factory == null) { if (factory == null) {
throw EsqlIllegalArgumentException.illegalDataType(sourceType); throw EsqlIllegalArgumentException.illegalDataType(sourceType);
} }
return factory.build(fieldEval, source()); return factory.build(source(), fieldEval);
} }
@Override @Override
@ -101,7 +100,7 @@ public abstract class AbstractConvertFunction extends UnaryScalarFunction {
@FunctionalInterface @FunctionalInterface
interface BuildFactory { interface BuildFactory {
ExpressionEvaluator.Factory build(ExpressionEvaluator.Factory field, Source source); ExpressionEvaluator.Factory build(Source source, ExpressionEvaluator.Factory field);
} }
/** /**
@ -131,12 +130,10 @@ public abstract class AbstractConvertFunction extends UnaryScalarFunction {
private static final Log logger = LogFactory.getLog(AbstractEvaluator.class); private static final Log logger = LogFactory.getLog(AbstractEvaluator.class);
protected final DriverContext driverContext; protected final DriverContext driverContext;
private final EvalOperator.ExpressionEvaluator fieldEvaluator;
private final Warnings warnings; private final Warnings warnings;
protected AbstractEvaluator(DriverContext driverContext, EvalOperator.ExpressionEvaluator field, Source source) { protected AbstractEvaluator(DriverContext driverContext, Source source) {
this.driverContext = driverContext; this.driverContext = driverContext;
this.fieldEvaluator = field;
this.warnings = Warnings.createWarnings( this.warnings = Warnings.createWarnings(
driverContext.warningsMode(), driverContext.warningsMode(),
source.source().getLineNumber(), source.source().getLineNumber(),
@ -145,7 +142,7 @@ public abstract class AbstractConvertFunction extends UnaryScalarFunction {
); );
} }
protected abstract String name(); protected abstract ExpressionEvaluator next();
/** /**
* Called when evaluating a {@link Block} that contains null values. * Called when evaluating a {@link Block} that contains null values.
@ -161,7 +158,7 @@ public abstract class AbstractConvertFunction extends UnaryScalarFunction {
@Override @Override
public final Block eval(Page page) { public final Block eval(Page page) {
try (Block block = fieldEvaluator.eval(page)) { try (Block block = next().eval(page)) {
Vector vector = block.asVector(); Vector vector = block.asVector();
return vector == null ? evalBlock(block) : evalVector(vector); return vector == null ? evalBlock(block) : evalVector(vector);
} }
@ -171,16 +168,5 @@ public abstract class AbstractConvertFunction extends UnaryScalarFunction {
logger.trace("conversion failure", exception); logger.trace("conversion failure", exception);
warnings.registerException(exception); warnings.registerException(exception);
} }
@Override
public final String toString() {
return name() + "Evaluator[field=" + fieldEvaluator + "]";
}
@Override
public void close() {
// TODO toString allocates - we should probably check breakers there too
Releasables.closeExpectNoException(fieldEvaluator);
}
} }
} }

View file

@ -42,7 +42,7 @@ public class ToBoolean extends AbstractConvertFunction {
); );
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(BOOLEAN, (field, source) -> field), Map.entry(BOOLEAN, (source, field) -> field),
Map.entry(KEYWORD, ToBooleanFromStringEvaluator.Factory::new), Map.entry(KEYWORD, ToBooleanFromStringEvaluator.Factory::new),
Map.entry(TEXT, ToBooleanFromStringEvaluator.Factory::new), Map.entry(TEXT, ToBooleanFromStringEvaluator.Factory::new),
Map.entry(SEMANTIC_TEXT, ToBooleanFromStringEvaluator.Factory::new), Map.entry(SEMANTIC_TEXT, ToBooleanFromStringEvaluator.Factory::new),

View file

@ -37,7 +37,7 @@ public class ToCartesianPoint extends AbstractConvertFunction {
); );
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(CARTESIAN_POINT, (fieldEval, source) -> fieldEval), Map.entry(CARTESIAN_POINT, (source, fieldEval) -> fieldEval),
Map.entry(KEYWORD, ToCartesianPointFromStringEvaluator.Factory::new), Map.entry(KEYWORD, ToCartesianPointFromStringEvaluator.Factory::new),
Map.entry(TEXT, ToCartesianPointFromStringEvaluator.Factory::new), Map.entry(TEXT, ToCartesianPointFromStringEvaluator.Factory::new),
Map.entry(SEMANTIC_TEXT, ToCartesianPointFromStringEvaluator.Factory::new) Map.entry(SEMANTIC_TEXT, ToCartesianPointFromStringEvaluator.Factory::new)

View file

@ -38,8 +38,8 @@ public class ToCartesianShape extends AbstractConvertFunction {
); );
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(CARTESIAN_POINT, (fieldEval, source) -> fieldEval), Map.entry(CARTESIAN_POINT, (source, fieldEval) -> fieldEval),
Map.entry(CARTESIAN_SHAPE, (fieldEval, source) -> fieldEval), Map.entry(CARTESIAN_SHAPE, (source, fieldEval) -> fieldEval),
Map.entry(KEYWORD, ToCartesianShapeFromStringEvaluator.Factory::new), Map.entry(KEYWORD, ToCartesianShapeFromStringEvaluator.Factory::new),
Map.entry(TEXT, ToCartesianShapeFromStringEvaluator.Factory::new), Map.entry(TEXT, ToCartesianShapeFromStringEvaluator.Factory::new),
Map.entry(SEMANTIC_TEXT, ToCartesianShapeFromStringEvaluator.Factory::new) Map.entry(SEMANTIC_TEXT, ToCartesianShapeFromStringEvaluator.Factory::new)

View file

@ -46,7 +46,7 @@ public class ToDateNanos extends AbstractConvertFunction {
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(DATETIME, ToDateNanosFromDatetimeEvaluator.Factory::new), Map.entry(DATETIME, ToDateNanosFromDatetimeEvaluator.Factory::new),
Map.entry(DATE_NANOS, (field, source) -> field), Map.entry(DATE_NANOS, (source, field) -> field),
Map.entry(LONG, ToDateNanosFromLongEvaluator.Factory::new), Map.entry(LONG, ToDateNanosFromLongEvaluator.Factory::new),
Map.entry(KEYWORD, ToDateNanosFromStringEvaluator.Factory::new), Map.entry(KEYWORD, ToDateNanosFromStringEvaluator.Factory::new),
Map.entry(TEXT, ToDateNanosFromStringEvaluator.Factory::new), Map.entry(TEXT, ToDateNanosFromStringEvaluator.Factory::new),

View file

@ -43,9 +43,9 @@ public class ToDatetime extends AbstractConvertFunction {
); );
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(DATETIME, (field, source) -> field), Map.entry(DATETIME, (source, field) -> field),
Map.entry(DATE_NANOS, ToDatetimeFromDateNanosEvaluator.Factory::new), Map.entry(DATE_NANOS, ToDatetimeFromDateNanosEvaluator.Factory::new),
Map.entry(LONG, (field, source) -> field), Map.entry(LONG, (source, field) -> field),
Map.entry(KEYWORD, ToDatetimeFromStringEvaluator.Factory::new), Map.entry(KEYWORD, ToDatetimeFromStringEvaluator.Factory::new),
Map.entry(TEXT, ToDatetimeFromStringEvaluator.Factory::new), Map.entry(TEXT, ToDatetimeFromStringEvaluator.Factory::new),
Map.entry(SEMANTIC_TEXT, ToDatetimeFromStringEvaluator.Factory::new), Map.entry(SEMANTIC_TEXT, ToDatetimeFromStringEvaluator.Factory::new),

View file

@ -42,11 +42,11 @@ public class ToDegrees extends AbstractConvertFunction implements EvaluatorMappe
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(DOUBLE, ToDegreesEvaluator.Factory::new), Map.entry(DOUBLE, ToDegreesEvaluator.Factory::new),
Map.entry(INTEGER, (field, source) -> new ToDegreesEvaluator.Factory(new ToDoubleFromIntEvaluator.Factory(field, source), source)), Map.entry(INTEGER, (source, field) -> new ToDegreesEvaluator.Factory(source, new ToDoubleFromIntEvaluator.Factory(source, field))),
Map.entry(LONG, (field, source) -> new ToDegreesEvaluator.Factory(new ToDoubleFromLongEvaluator.Factory(field, source), source)), Map.entry(LONG, (source, field) -> new ToDegreesEvaluator.Factory(source, new ToDoubleFromLongEvaluator.Factory(source, field))),
Map.entry( Map.entry(
UNSIGNED_LONG, UNSIGNED_LONG,
(field, source) -> new ToDegreesEvaluator.Factory(new ToDoubleFromUnsignedLongEvaluator.Factory(field, source), source) (source, field) -> new ToDegreesEvaluator.Factory(source, new ToDoubleFromUnsignedLongEvaluator.Factory(source, field))
) )
); );

View file

@ -40,7 +40,7 @@ public class ToDouble extends AbstractConvertFunction {
public static final NamedWriteableRegistry.Entry ENTRY = new NamedWriteableRegistry.Entry(Expression.class, "ToDouble", ToDouble::new); public static final NamedWriteableRegistry.Entry ENTRY = new NamedWriteableRegistry.Entry(Expression.class, "ToDouble", ToDouble::new);
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(DOUBLE, (fieldEval, source) -> fieldEval), Map.entry(DOUBLE, (source, fieldEval) -> fieldEval),
Map.entry(BOOLEAN, ToDoubleFromBooleanEvaluator.Factory::new), Map.entry(BOOLEAN, ToDoubleFromBooleanEvaluator.Factory::new),
Map.entry(DATETIME, ToDoubleFromLongEvaluator.Factory::new), // CastLongToDoubleEvaluator would be a candidate, but not MV'd Map.entry(DATETIME, ToDoubleFromLongEvaluator.Factory::new), // CastLongToDoubleEvaluator would be a candidate, but not MV'd
Map.entry(KEYWORD, ToDoubleFromStringEvaluator.Factory::new), Map.entry(KEYWORD, ToDoubleFromStringEvaluator.Factory::new),
@ -49,7 +49,7 @@ public class ToDouble extends AbstractConvertFunction {
Map.entry(UNSIGNED_LONG, ToDoubleFromUnsignedLongEvaluator.Factory::new), Map.entry(UNSIGNED_LONG, ToDoubleFromUnsignedLongEvaluator.Factory::new),
Map.entry(LONG, ToDoubleFromLongEvaluator.Factory::new), // CastLongToDoubleEvaluator would be a candidate, but not MV'd Map.entry(LONG, ToDoubleFromLongEvaluator.Factory::new), // CastLongToDoubleEvaluator would be a candidate, but not MV'd
Map.entry(INTEGER, ToDoubleFromIntEvaluator.Factory::new), // CastIntToDoubleEvaluator would be a candidate, but not MV'd Map.entry(INTEGER, ToDoubleFromIntEvaluator.Factory::new), // CastIntToDoubleEvaluator would be a candidate, but not MV'd
Map.entry(DataType.COUNTER_DOUBLE, (field, source) -> field), Map.entry(DataType.COUNTER_DOUBLE, (source, field) -> field),
Map.entry(DataType.COUNTER_INTEGER, ToDoubleFromIntEvaluator.Factory::new), Map.entry(DataType.COUNTER_INTEGER, ToDoubleFromIntEvaluator.Factory::new),
Map.entry(DataType.COUNTER_LONG, ToDoubleFromLongEvaluator.Factory::new) Map.entry(DataType.COUNTER_LONG, ToDoubleFromLongEvaluator.Factory::new)
); );

View file

@ -37,7 +37,7 @@ public class ToGeoPoint extends AbstractConvertFunction {
); );
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(GEO_POINT, (fieldEval, source) -> fieldEval), Map.entry(GEO_POINT, (source, fieldEval) -> fieldEval),
Map.entry(KEYWORD, ToGeoPointFromStringEvaluator.Factory::new), Map.entry(KEYWORD, ToGeoPointFromStringEvaluator.Factory::new),
Map.entry(TEXT, ToGeoPointFromStringEvaluator.Factory::new), Map.entry(TEXT, ToGeoPointFromStringEvaluator.Factory::new),
Map.entry(SEMANTIC_TEXT, ToGeoPointFromStringEvaluator.Factory::new) Map.entry(SEMANTIC_TEXT, ToGeoPointFromStringEvaluator.Factory::new)

View file

@ -38,8 +38,8 @@ public class ToGeoShape extends AbstractConvertFunction {
); );
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(GEO_POINT, (fieldEval, source) -> fieldEval), Map.entry(GEO_POINT, (source, fieldEval) -> fieldEval),
Map.entry(GEO_SHAPE, (fieldEval, source) -> fieldEval), Map.entry(GEO_SHAPE, (source, fieldEval) -> fieldEval),
Map.entry(KEYWORD, ToGeoShapeFromStringEvaluator.Factory::new), Map.entry(KEYWORD, ToGeoShapeFromStringEvaluator.Factory::new),
Map.entry(TEXT, ToGeoShapeFromStringEvaluator.Factory::new), Map.entry(TEXT, ToGeoShapeFromStringEvaluator.Factory::new),
Map.entry(SEMANTIC_TEXT, ToGeoShapeFromStringEvaluator.Factory::new) Map.entry(SEMANTIC_TEXT, ToGeoShapeFromStringEvaluator.Factory::new)

View file

@ -33,7 +33,7 @@ public class ToIP extends AbstractConvertFunction {
public static final NamedWriteableRegistry.Entry ENTRY = new NamedWriteableRegistry.Entry(Expression.class, "ToIP", ToIP::new); public static final NamedWriteableRegistry.Entry ENTRY = new NamedWriteableRegistry.Entry(Expression.class, "ToIP", ToIP::new);
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(IP, (field, source) -> field), Map.entry(IP, (source, field) -> field),
Map.entry(KEYWORD, ToIPFromStringEvaluator.Factory::new), Map.entry(KEYWORD, ToIPFromStringEvaluator.Factory::new),
Map.entry(TEXT, ToIPFromStringEvaluator.Factory::new), Map.entry(TEXT, ToIPFromStringEvaluator.Factory::new),
Map.entry(SEMANTIC_TEXT, ToIPFromStringEvaluator.Factory::new) Map.entry(SEMANTIC_TEXT, ToIPFromStringEvaluator.Factory::new)

View file

@ -46,7 +46,7 @@ public class ToInteger extends AbstractConvertFunction {
); );
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(INTEGER, (fieldEval, source) -> fieldEval), Map.entry(INTEGER, (source, fieldEval) -> fieldEval),
Map.entry(BOOLEAN, ToIntegerFromBooleanEvaluator.Factory::new), Map.entry(BOOLEAN, ToIntegerFromBooleanEvaluator.Factory::new),
Map.entry(DATETIME, ToIntegerFromLongEvaluator.Factory::new), Map.entry(DATETIME, ToIntegerFromLongEvaluator.Factory::new),
Map.entry(KEYWORD, ToIntegerFromStringEvaluator.Factory::new), Map.entry(KEYWORD, ToIntegerFromStringEvaluator.Factory::new),
@ -55,7 +55,7 @@ public class ToInteger extends AbstractConvertFunction {
Map.entry(DOUBLE, ToIntegerFromDoubleEvaluator.Factory::new), Map.entry(DOUBLE, ToIntegerFromDoubleEvaluator.Factory::new),
Map.entry(UNSIGNED_LONG, ToIntegerFromUnsignedLongEvaluator.Factory::new), Map.entry(UNSIGNED_LONG, ToIntegerFromUnsignedLongEvaluator.Factory::new),
Map.entry(LONG, ToIntegerFromLongEvaluator.Factory::new), Map.entry(LONG, ToIntegerFromLongEvaluator.Factory::new),
Map.entry(COUNTER_INTEGER, (fieldEval, source) -> fieldEval) Map.entry(COUNTER_INTEGER, (source, fieldEval) -> fieldEval)
); );
@FunctionInfo( @FunctionInfo(

View file

@ -42,9 +42,9 @@ public class ToLong extends AbstractConvertFunction {
public static final NamedWriteableRegistry.Entry ENTRY = new NamedWriteableRegistry.Entry(Expression.class, "ToLong", ToLong::new); public static final NamedWriteableRegistry.Entry ENTRY = new NamedWriteableRegistry.Entry(Expression.class, "ToLong", ToLong::new);
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(LONG, (fieldEval, source) -> fieldEval), Map.entry(LONG, (source, fieldEval) -> fieldEval),
Map.entry(DATETIME, (fieldEval, source) -> fieldEval), Map.entry(DATETIME, (source, fieldEval) -> fieldEval),
Map.entry(DATE_NANOS, (fieldEval, source) -> fieldEval), Map.entry(DATE_NANOS, (source, fieldEval) -> fieldEval),
Map.entry(BOOLEAN, ToLongFromBooleanEvaluator.Factory::new), Map.entry(BOOLEAN, ToLongFromBooleanEvaluator.Factory::new),
Map.entry(KEYWORD, ToLongFromStringEvaluator.Factory::new), Map.entry(KEYWORD, ToLongFromStringEvaluator.Factory::new),
Map.entry(TEXT, ToLongFromStringEvaluator.Factory::new), Map.entry(TEXT, ToLongFromStringEvaluator.Factory::new),
@ -52,7 +52,7 @@ public class ToLong extends AbstractConvertFunction {
Map.entry(DOUBLE, ToLongFromDoubleEvaluator.Factory::new), Map.entry(DOUBLE, ToLongFromDoubleEvaluator.Factory::new),
Map.entry(UNSIGNED_LONG, ToLongFromUnsignedLongEvaluator.Factory::new), Map.entry(UNSIGNED_LONG, ToLongFromUnsignedLongEvaluator.Factory::new),
Map.entry(INTEGER, ToLongFromIntEvaluator.Factory::new), // CastIntToLongEvaluator would be a candidate, but not MV'd Map.entry(INTEGER, ToLongFromIntEvaluator.Factory::new), // CastIntToLongEvaluator would be a candidate, but not MV'd
Map.entry(DataType.COUNTER_LONG, (field, source) -> field), Map.entry(DataType.COUNTER_LONG, (source, field) -> field),
Map.entry(DataType.COUNTER_INTEGER, ToLongFromIntEvaluator.Factory::new) Map.entry(DataType.COUNTER_INTEGER, ToLongFromIntEvaluator.Factory::new)
); );

View file

@ -41,11 +41,11 @@ public class ToRadians extends AbstractConvertFunction implements EvaluatorMappe
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(DOUBLE, ToRadiansEvaluator.Factory::new), Map.entry(DOUBLE, ToRadiansEvaluator.Factory::new),
Map.entry(INTEGER, (field, source) -> new ToRadiansEvaluator.Factory(new ToDoubleFromIntEvaluator.Factory(field, source), source)), Map.entry(INTEGER, (source, field) -> new ToRadiansEvaluator.Factory(source, new ToDoubleFromIntEvaluator.Factory(source, field))),
Map.entry(LONG, (field, source) -> new ToRadiansEvaluator.Factory(new ToDoubleFromLongEvaluator.Factory(field, source), source)), Map.entry(LONG, (source, field) -> new ToRadiansEvaluator.Factory(source, new ToDoubleFromLongEvaluator.Factory(source, field))),
Map.entry( Map.entry(
UNSIGNED_LONG, UNSIGNED_LONG,
(field, source) -> new ToRadiansEvaluator.Factory(new ToDoubleFromUnsignedLongEvaluator.Factory(field, source), source) (source, field) -> new ToRadiansEvaluator.Factory(source, new ToDoubleFromUnsignedLongEvaluator.Factory(source, field))
) )
); );

View file

@ -53,7 +53,7 @@ public class ToString extends AbstractConvertFunction implements EvaluatorMapper
public static final NamedWriteableRegistry.Entry ENTRY = new NamedWriteableRegistry.Entry(Expression.class, "ToString", ToString::new); public static final NamedWriteableRegistry.Entry ENTRY = new NamedWriteableRegistry.Entry(Expression.class, "ToString", ToString::new);
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(KEYWORD, (fieldEval, source) -> fieldEval), Map.entry(KEYWORD, (source, fieldEval) -> fieldEval),
Map.entry(BOOLEAN, ToStringFromBooleanEvaluator.Factory::new), Map.entry(BOOLEAN, ToStringFromBooleanEvaluator.Factory::new),
Map.entry(DATETIME, ToStringFromDatetimeEvaluator.Factory::new), Map.entry(DATETIME, ToStringFromDatetimeEvaluator.Factory::new),
Map.entry(DATE_NANOS, ToStringFromDateNanosEvaluator.Factory::new), Map.entry(DATE_NANOS, ToStringFromDateNanosEvaluator.Factory::new),
@ -61,8 +61,8 @@ public class ToString extends AbstractConvertFunction implements EvaluatorMapper
Map.entry(DOUBLE, ToStringFromDoubleEvaluator.Factory::new), Map.entry(DOUBLE, ToStringFromDoubleEvaluator.Factory::new),
Map.entry(LONG, ToStringFromLongEvaluator.Factory::new), Map.entry(LONG, ToStringFromLongEvaluator.Factory::new),
Map.entry(INTEGER, ToStringFromIntEvaluator.Factory::new), Map.entry(INTEGER, ToStringFromIntEvaluator.Factory::new),
Map.entry(TEXT, (fieldEval, source) -> fieldEval), Map.entry(TEXT, (source, fieldEval) -> fieldEval),
Map.entry(SEMANTIC_TEXT, (fieldEval, source) -> fieldEval), Map.entry(SEMANTIC_TEXT, (source, fieldEval) -> fieldEval),
Map.entry(VERSION, ToStringFromVersionEvaluator.Factory::new), Map.entry(VERSION, ToStringFromVersionEvaluator.Factory::new),
Map.entry(UNSIGNED_LONG, ToStringFromUnsignedLongEvaluator.Factory::new), Map.entry(UNSIGNED_LONG, ToStringFromUnsignedLongEvaluator.Factory::new),
Map.entry(GEO_POINT, ToStringFromGeoPointEvaluator.Factory::new), Map.entry(GEO_POINT, ToStringFromGeoPointEvaluator.Factory::new),

View file

@ -14,18 +14,22 @@ import org.elasticsearch.compute.data.CompositeBlock;
import org.elasticsearch.compute.data.Vector; import org.elasticsearch.compute.data.Vector;
import org.elasticsearch.compute.operator.DriverContext; import org.elasticsearch.compute.operator.DriverContext;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.core.Releasables;
import org.elasticsearch.xpack.esql.core.tree.Source; import org.elasticsearch.xpack.esql.core.tree.Source;
import static org.elasticsearch.xpack.esql.type.EsqlDataTypeConverter.aggregateMetricDoubleBlockToString; import static org.elasticsearch.xpack.esql.type.EsqlDataTypeConverter.aggregateMetricDoubleBlockToString;
public class ToStringFromAggregateMetricDoubleEvaluator extends AbstractConvertFunction.AbstractEvaluator { public class ToStringFromAggregateMetricDoubleEvaluator extends AbstractConvertFunction.AbstractEvaluator {
public ToStringFromAggregateMetricDoubleEvaluator(EvalOperator.ExpressionEvaluator field, Source source, DriverContext driverContext) { private final EvalOperator.ExpressionEvaluator field;
super(driverContext, field, source);
public ToStringFromAggregateMetricDoubleEvaluator(Source source, EvalOperator.ExpressionEvaluator field, DriverContext driverContext) {
super(driverContext, source);
this.field = field;
} }
@Override @Override
protected String name() { protected EvalOperator.ExpressionEvaluator next() {
return "ToStringFromAggregateMetricDouble"; return field;
} }
@Override @Override
@ -53,18 +57,28 @@ public class ToStringFromAggregateMetricDoubleEvaluator extends AbstractConvertF
} }
} }
@Override
public String toString() {
return "ToStringFromAggregateMetricDoubleEvaluator[field=" + field + ']';
}
@Override
public void close() {
Releasables.closeExpectNoException(field);
}
public static class Factory implements EvalOperator.ExpressionEvaluator.Factory { public static class Factory implements EvalOperator.ExpressionEvaluator.Factory {
private final Source source; private final Source source;
private final EvalOperator.ExpressionEvaluator.Factory field; private final EvalOperator.ExpressionEvaluator.Factory field;
public Factory(EvalOperator.ExpressionEvaluator.Factory field, Source source) { public Factory(Source source, EvalOperator.ExpressionEvaluator.Factory field) {
this.field = field;
this.source = source; this.source = source;
this.field = field;
} }
@Override @Override
public EvalOperator.ExpressionEvaluator get(DriverContext context) { public EvalOperator.ExpressionEvaluator get(DriverContext context) {
return new ToStringFromAggregateMetricDoubleEvaluator(field.get(context), source, context); return new ToStringFromAggregateMetricDoubleEvaluator(source, field.get(context), context);
} }
} }
} }

View file

@ -47,7 +47,7 @@ public class ToUnsignedLong extends AbstractConvertFunction {
); );
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(UNSIGNED_LONG, (fieldEval, source) -> fieldEval), Map.entry(UNSIGNED_LONG, (source, fieldEval) -> fieldEval),
Map.entry(DATETIME, ToUnsignedLongFromLongEvaluator.Factory::new), Map.entry(DATETIME, ToUnsignedLongFromLongEvaluator.Factory::new),
Map.entry(BOOLEAN, ToUnsignedLongFromBooleanEvaluator.Factory::new), Map.entry(BOOLEAN, ToUnsignedLongFromBooleanEvaluator.Factory::new),
Map.entry(KEYWORD, ToUnsignedLongFromStringEvaluator.Factory::new), Map.entry(KEYWORD, ToUnsignedLongFromStringEvaluator.Factory::new),

View file

@ -37,7 +37,7 @@ public class ToVersion extends AbstractConvertFunction {
); );
private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries( private static final Map<DataType, BuildFactory> EVALUATORS = Map.ofEntries(
Map.entry(VERSION, (fieldEval, source) -> fieldEval), Map.entry(VERSION, (source, fieldEval) -> fieldEval),
Map.entry(KEYWORD, ToVersionFromStringEvaluator.Factory::new), Map.entry(KEYWORD, ToVersionFromStringEvaluator.Factory::new),
Map.entry(TEXT, ToVersionFromStringEvaluator.Factory::new), Map.entry(TEXT, ToVersionFromStringEvaluator.Factory::new),
Map.entry(SEMANTIC_TEXT, ToVersionFromStringEvaluator.Factory::new) Map.entry(SEMANTIC_TEXT, ToVersionFromStringEvaluator.Factory::new)

View file

@ -91,9 +91,9 @@ public class StEnvelope extends UnaryScalarFunction {
@Override @Override
public EvalOperator.ExpressionEvaluator.Factory toEvaluator(ToEvaluator toEvaluator) { public EvalOperator.ExpressionEvaluator.Factory toEvaluator(ToEvaluator toEvaluator) {
if (field().dataType() == GEO_POINT || field().dataType() == DataType.GEO_SHAPE) { if (field().dataType() == GEO_POINT || field().dataType() == DataType.GEO_SHAPE) {
return new StEnvelopeFromWKBGeoEvaluator.Factory(toEvaluator.apply(field()), source()); return new StEnvelopeFromWKBGeoEvaluator.Factory(source(), toEvaluator.apply(field()));
} }
return new StEnvelopeFromWKBEvaluator.Factory(toEvaluator.apply(field()), source()); return new StEnvelopeFromWKBEvaluator.Factory(source(), toEvaluator.apply(field()));
} }
@Override @Override

View file

@ -72,7 +72,7 @@ public class StX extends UnaryScalarFunction {
@Override @Override
public EvalOperator.ExpressionEvaluator.Factory toEvaluator(ToEvaluator toEvaluator) { public EvalOperator.ExpressionEvaluator.Factory toEvaluator(ToEvaluator toEvaluator) {
return new StXFromWKBEvaluator.Factory(toEvaluator.apply(field()), source()); return new StXFromWKBEvaluator.Factory(source(), toEvaluator.apply(field()));
} }
@Override @Override

View file

@ -76,9 +76,9 @@ public class StXMax extends UnaryScalarFunction {
@Override @Override
public EvalOperator.ExpressionEvaluator.Factory toEvaluator(ToEvaluator toEvaluator) { public EvalOperator.ExpressionEvaluator.Factory toEvaluator(ToEvaluator toEvaluator) {
if (field().dataType() == GEO_POINT || field().dataType() == DataType.GEO_SHAPE) { if (field().dataType() == GEO_POINT || field().dataType() == DataType.GEO_SHAPE) {
return new StXMaxFromWKBGeoEvaluator.Factory(toEvaluator.apply(field()), source()); return new StXMaxFromWKBGeoEvaluator.Factory(source(), toEvaluator.apply(field()));
} }
return new StXMaxFromWKBEvaluator.Factory(toEvaluator.apply(field()), source()); return new StXMaxFromWKBEvaluator.Factory(source(), toEvaluator.apply(field()));
} }
@Override @Override

View file

@ -76,9 +76,9 @@ public class StXMin extends UnaryScalarFunction {
@Override @Override
public EvalOperator.ExpressionEvaluator.Factory toEvaluator(ToEvaluator toEvaluator) { public EvalOperator.ExpressionEvaluator.Factory toEvaluator(ToEvaluator toEvaluator) {
if (field().dataType() == GEO_POINT || field().dataType() == DataType.GEO_SHAPE) { if (field().dataType() == GEO_POINT || field().dataType() == DataType.GEO_SHAPE) {
return new StXMinFromWKBGeoEvaluator.Factory(toEvaluator.apply(field()), source()); return new StXMinFromWKBGeoEvaluator.Factory(source(), toEvaluator.apply(field()));
} }
return new StXMinFromWKBEvaluator.Factory(toEvaluator.apply(field()), source()); return new StXMinFromWKBEvaluator.Factory(source(), toEvaluator.apply(field()));
} }
@Override @Override

View file

@ -72,7 +72,7 @@ public class StY extends UnaryScalarFunction {
@Override @Override
public EvalOperator.ExpressionEvaluator.Factory toEvaluator(ToEvaluator toEvaluator) { public EvalOperator.ExpressionEvaluator.Factory toEvaluator(ToEvaluator toEvaluator) {
return new StYFromWKBEvaluator.Factory(toEvaluator.apply(field()), source()); return new StYFromWKBEvaluator.Factory(source(), toEvaluator.apply(field()));
} }
@Override @Override

View file

@ -76,9 +76,9 @@ public class StYMax extends UnaryScalarFunction {
@Override @Override
public EvalOperator.ExpressionEvaluator.Factory toEvaluator(ToEvaluator toEvaluator) { public EvalOperator.ExpressionEvaluator.Factory toEvaluator(ToEvaluator toEvaluator) {
if (field().dataType() == GEO_POINT || field().dataType() == DataType.GEO_SHAPE) { if (field().dataType() == GEO_POINT || field().dataType() == DataType.GEO_SHAPE) {
return new StYMaxFromWKBGeoEvaluator.Factory(toEvaluator.apply(field()), source()); return new StYMaxFromWKBGeoEvaluator.Factory(source(), toEvaluator.apply(field()));
} }
return new StYMaxFromWKBEvaluator.Factory(toEvaluator.apply(field()), source()); return new StYMaxFromWKBEvaluator.Factory(source(), toEvaluator.apply(field()));
} }
@Override @Override

View file

@ -76,9 +76,9 @@ public class StYMin extends UnaryScalarFunction {
@Override @Override
public EvalOperator.ExpressionEvaluator.Factory toEvaluator(ToEvaluator toEvaluator) { public EvalOperator.ExpressionEvaluator.Factory toEvaluator(ToEvaluator toEvaluator) {
if (field().dataType() == GEO_POINT || field().dataType() == DataType.GEO_SHAPE) { if (field().dataType() == GEO_POINT || field().dataType() == DataType.GEO_SHAPE) {
return new StYMinFromWKBGeoEvaluator.Factory(toEvaluator.apply(field()), source()); return new StYMinFromWKBGeoEvaluator.Factory(source(), toEvaluator.apply(field()));
} }
return new StYMinFromWKBEvaluator.Factory(toEvaluator.apply(field()), source()); return new StYMinFromWKBEvaluator.Factory(source(), toEvaluator.apply(field()));
} }
@Override @Override

View file

@ -9,7 +9,7 @@ package org.elasticsearch.xpack.esql.expression.function.scalar.string;
import org.apache.lucene.util.BytesRef; import org.apache.lucene.util.BytesRef;
import org.elasticsearch.common.lucene.BytesRefs; import org.elasticsearch.common.lucene.BytesRefs;
import org.elasticsearch.compute.ann.Evaluator; import org.elasticsearch.compute.ann.ConvertEvaluator;
import org.elasticsearch.compute.ann.Fixed; import org.elasticsearch.compute.ann.Fixed;
import org.elasticsearch.compute.operator.EvalOperator; import org.elasticsearch.compute.operator.EvalOperator;
import org.elasticsearch.xpack.esql.core.expression.Expression; import org.elasticsearch.xpack.esql.core.expression.Expression;
@ -99,7 +99,7 @@ public abstract class ChangeCase extends EsqlConfigurationFunction {
return replaceChild(newChildren.get(0)); return replaceChild(newChildren.get(0));
} }
@Evaluator @ConvertEvaluator
static BytesRef process(BytesRef val, @Fixed Locale locale, @Fixed Case caseType) { static BytesRef process(BytesRef val, @Fixed Locale locale, @Fixed Case caseType) {
return BytesRefs.toBytesRef(caseType.process(val.utf8ToString(), locale)); return BytesRefs.toBytesRef(caseType.process(val.utf8ToString(), locale));
} }

View file

@ -28,17 +28,11 @@ public class ToLower extends ChangeCase {
@FunctionInfo( @FunctionInfo(
returnType = { "keyword" }, returnType = { "keyword" },
description = "Returns a new string representing the input string converted to lower case.", description = "Returns a new string representing the input string converted to lower case.",
examples = @Example(file = "string", tag = "to_lower") examples = { @Example(file = "string", tag = "to_lower"), @Example(file = "string", tag = "to_lower_mv"), }
) )
public ToLower( public ToLower(Source source, @Param(name = "str", type = { "keyword", "text" }, description = """
Source source, String expression. If `null`, the function returns `null`.
@Param( The input can be a single- or multi-valued column or an expression.""") Expression field, Configuration configuration) {
name = "str",
type = { "keyword", "text" },
description = "String expression. If `null`, the function returns `null`."
) Expression field,
Configuration configuration
) {
super(source, field, configuration, Case.LOWER); super(source, field, configuration, Case.LOWER);
} }

View file

@ -30,15 +30,9 @@ public class ToUpper extends ChangeCase {
description = "Returns a new string representing the input string converted to upper case.", description = "Returns a new string representing the input string converted to upper case.",
examples = @Example(file = "string", tag = "to_upper") examples = @Example(file = "string", tag = "to_upper")
) )
public ToUpper( public ToUpper(Source source, @Param(name = "str", type = { "keyword", "text" }, description = """
Source source, String expression. If `null`, the function returns `null`.
@Param( The input can be a single- or multi-valued column or an expression.""") Expression field, Configuration configuration) {
name = "str",
type = { "keyword", "text" },
description = "String expression. If `null`, the function returns `null`."
) Expression field,
Configuration configuration
) {
super(source, field, configuration, Case.UPPER); super(source, field, configuration, Case.UPPER);
} }

View file

@ -38,7 +38,7 @@ public class ToBooleanTests extends AbstractScalarFunctionTestCase {
TestCaseSupplier.forUnaryInt( TestCaseSupplier.forUnaryInt(
suppliers, suppliers,
"ToBooleanFromIntEvaluator[field=" + read + "]", "ToBooleanFromIntEvaluator[i=" + read + "]",
DataType.BOOLEAN, DataType.BOOLEAN,
i -> i != 0, i -> i != 0,
Integer.MIN_VALUE, Integer.MIN_VALUE,
@ -47,7 +47,7 @@ public class ToBooleanTests extends AbstractScalarFunctionTestCase {
); );
TestCaseSupplier.forUnaryLong( TestCaseSupplier.forUnaryLong(
suppliers, suppliers,
"ToBooleanFromLongEvaluator[field=" + read + "]", "ToBooleanFromLongEvaluator[l=" + read + "]",
DataType.BOOLEAN, DataType.BOOLEAN,
l -> l != 0, l -> l != 0,
Long.MIN_VALUE, Long.MIN_VALUE,
@ -56,7 +56,7 @@ public class ToBooleanTests extends AbstractScalarFunctionTestCase {
); );
TestCaseSupplier.forUnaryUnsignedLong( TestCaseSupplier.forUnaryUnsignedLong(
suppliers, suppliers,
"ToBooleanFromUnsignedLongEvaluator[field=" + read + "]", "ToBooleanFromUnsignedLongEvaluator[ul=" + read + "]",
DataType.BOOLEAN, DataType.BOOLEAN,
ul -> ul.compareTo(BigInteger.ZERO) != 0, ul -> ul.compareTo(BigInteger.ZERO) != 0,
BigInteger.ZERO, BigInteger.ZERO,
@ -65,7 +65,7 @@ public class ToBooleanTests extends AbstractScalarFunctionTestCase {
); );
TestCaseSupplier.forUnaryDouble( TestCaseSupplier.forUnaryDouble(
suppliers, suppliers,
"ToBooleanFromDoubleEvaluator[field=" + read + "]", "ToBooleanFromDoubleEvaluator[d=" + read + "]",
DataType.BOOLEAN, DataType.BOOLEAN,
d -> d != 0d, d -> d != 0d,
Double.NEGATIVE_INFINITY, Double.NEGATIVE_INFINITY,
@ -74,7 +74,7 @@ public class ToBooleanTests extends AbstractScalarFunctionTestCase {
); );
TestCaseSupplier.forUnaryStrings( TestCaseSupplier.forUnaryStrings(
suppliers, suppliers,
"ToBooleanFromStringEvaluator[field=" + read + "]", "ToBooleanFromStringEvaluator[keyword=" + read + "]",
DataType.BOOLEAN, DataType.BOOLEAN,
bytesRef -> String.valueOf(bytesRef).toLowerCase(Locale.ROOT).equals("true"), bytesRef -> String.valueOf(bytesRef).toLowerCase(Locale.ROOT).equals("true"),
emptyList() emptyList()

Some files were not shown because too many files have changed in this diff Show more