return new EventType[]{firstParamType, indexEventType};
}
public EnumEval getEnumEval(MethodResolutionService methodResolutionService, EventAdapterService eventAdapterService, StreamTypeService streamTypeService, String statementId, String enumMethodUsedName, List<ExprDotEvalParam> bodiesAndParameters, EventType inputEventType, Class collectionComponentType, int numStreamsIncoming) {
ExprDotEvalParamLambda first = (ExprDotEvalParamLambda) bodiesAndParameters.get(0);
if (inputEventType != null) {
super.setTypeInfo(ExpressionReturnType.collectionOfEvents(inputEventType));
if (first.getGoesToNames().size() == 1) {
return new EnumEvalWhereEvents(first.getBodyEvaluator(), first.getStreamCountIncoming());
}
return new EnumEvalWhereIndexEvents(first.getBodyEvaluator(), first.getStreamCountIncoming(), (ObjectArrayEventType) first.getGoesToTypes()[1]);
}
super.setTypeInfo(ExpressionReturnType.collectionOfSingleValue(collectionComponentType));
if (first.getGoesToNames().size() == 1) {
return new EnumEvalWhereScalar(first.getBodyEvaluator(), first.getStreamCountIncoming(), (ObjectArrayEventType) first.getGoesToTypes()[0]);
}
return new EnumEvalWhereScalarIndex(first.getBodyEvaluator(), first.getStreamCountIncoming(), (ObjectArrayEventType) first.getGoesToTypes()[0], (ObjectArrayEventType) first.getGoesToTypes()[1]);
}