@Override public String visitVariableReferenceExpression(VariableReferenceExpression expr, Integer indent) throws AlgebricksException { return expr.toString(); }
@Override public IAggregateEvaluatorFactory createAggregateFunctionFactory(AggregateFunctionCallExpression expr, IVariableTypeEnvironment env, IOperatorSchema[] inputSchemas, JobGenContext context) throws AlgebricksException { return lejg.createAggregateFunctionFactory(expr, env, inputSchemas, context); }
@Override public String visitAggregateFunctionCallExpression(AggregateFunctionCallExpression expr, Integer indent) throws AlgebricksException { return expr.toString(); }
@Override public AggregateFunctionCallExpression cloneExpression() { cloneAnnotations(); List<Mutable<ILogicalExpression>> clonedArgs = cloneArguments(); AggregateFunctionCallExpression fun = new AggregateFunctionCallExpression(finfo, twoStep, clonedArgs); fun.setStepTwoAggregate(stepTwoAggregate); fun.setStepOneAggregate(stepOneAggregate); fun.setSourceLocation(sourceLoc); // opaqueParameters are not really cloned fun.setOpaqueParameters(getOpaqueParameters()); return fun; }
@Override public UnnestingFunctionCallExpression cloneExpression() { cloneAnnotations(); List<Mutable<ILogicalExpression>> clonedArgs = cloneArguments(); UnnestingFunctionCallExpression ufce = new UnnestingFunctionCallExpression(finfo, clonedArgs); ufce.setReturnsUniqueValues(returnsUniqueValues); ufce.setOpaqueParameters(this.getOpaqueParameters()); ufce.setSourceLocation(sourceLoc); return ufce; }
@Override public AbstractLogicalExpression cloneExpression() { VariableReferenceExpression varRef = new VariableReferenceExpression(variable); varRef.setSourceLocation(sourceLoc); return varRef; }
@Override public StatefulFunctionCallExpression cloneExpression() { cloneAnnotations(); List<Mutable<ILogicalExpression>> clonedArgs = cloneArguments(); StatefulFunctionCallExpression clonedExpr = new StatefulFunctionCallExpression(finfo, propertiesComputer, clonedArgs); clonedExpr.setSourceLocation(sourceLoc); return clonedExpr; }
private void deepCopyOpaqueParameters(AbstractFunctionCallExpression src, AbstractFunctionCallExpression dest) { Object[] srcOpaqueParameters = src.getOpaqueParameters(); Object[] newOpaqueParameters = null; if (srcOpaqueParameters != null) { newOpaqueParameters = new Object[srcOpaqueParameters.length]; for (int i = 0; i < srcOpaqueParameters.length; i++) { newOpaqueParameters[i] = srcOpaqueParameters[i]; } } dest.setOpaqueParameters(newOpaqueParameters); }
public static IAType getRequiredType(AbstractFunctionCallExpression expr) { Object[] type = expr.getOpaqueParameters(); if (type != null) { IAType returnType = (IAType) type[0]; return returnType; } else { return null; } } }
@Override public IExpressionAnnotation copy() { IndexedNLJoinExpressionAnnotation clone = new IndexedNLJoinExpressionAnnotation(); clone.setObject(object); return clone; }
@Override public IExpressionAnnotation copy() { BroadcastExpressionAnnotation bcast = new BroadcastExpressionAnnotation(); bcast.side = side; return bcast; }
@Override public boolean equals(Object o) { if (!(o instanceof OptimizableFuncExpr)) return false; else return funcExpr.equals(o); }
@Override public ISerializedAggregateEvaluatorFactory createSerializableAggregateFunctionFactory( AggregateFunctionCallExpression expr, IVariableTypeEnvironment env, IOperatorSchema[] inputSchemas, JobGenContext context) throws AlgebricksException { return lejg.createSerializableAggregateFunctionFactory(expr, env, inputSchemas, context); }
@Override public IRunningAggregateEvaluatorFactory createRunningAggregateFunctionFactory(StatefulFunctionCallExpression expr, IVariableTypeEnvironment env, IOperatorSchema[] inputSchemas, JobGenContext context) throws AlgebricksException { return lejg.createRunningAggregateFunctionFactory(expr, env, inputSchemas, context); }
@Override public String visitStatefulFunctionCallExpression(StatefulFunctionCallExpression expr, Integer indent) throws AlgebricksException { return expr.toString(); }
@Override public IUnnestingEvaluatorFactory createUnnestingFunctionFactory(UnnestingFunctionCallExpression expr, IVariableTypeEnvironment env, IOperatorSchema[] inputSchemas, JobGenContext context) throws AlgebricksException { return lejg.createUnnestingFunctionFactory(expr, env, inputSchemas, context); } }
@Override public String visitScalarFunctionCallExpression(ScalarFunctionCallExpression expr, Integer indent) throws AlgebricksException { return expr.toString(); }
@Override public IScalarEvaluatorFactory createEvaluatorFactory(ILogicalExpression expr, IVariableTypeEnvironment env, IOperatorSchema[] inputSchemas, JobGenContext context) throws AlgebricksException { return lejg.createEvaluatorFactory(expr, env, inputSchemas, context); }
@Override public String visitUnnestingFunctionCallExpression(UnnestingFunctionCallExpression expr, Integer indent) throws AlgebricksException { return expr.toString(); } }
@Override public String visitVariableReferenceExpression(VariableReferenceExpression expr, Integer indent) throws AlgebricksException { return expr.toString(); }