public static BytecodeExpression invokeFunction(Scope scope, CachedInstanceBinder cachedInstanceBinder, String name, ScalarFunctionImplementation function, BytecodeExpression... parameters) { return invokeFunction(scope, cachedInstanceBinder, name, function, ImmutableList.copyOf(parameters)); }
public static ArrayMapBytecodeExpression map(Scope scope, CachedInstanceBinder cachedInstanceBinder, Type fromElementType, Type toElementType, Variable array, String elementFunctionName, ScalarFunctionImplementation elementFunction) { return map( scope, cachedInstanceBinder.getCallSiteBinder(), fromElementType, toElementType, array, element -> invokeFunction(scope, cachedInstanceBinder, elementFunctionName, elementFunction, element)); }
BytecodeExpression toElement = invokeFunction(scope, cachedInstanceBinder, signature.getName(), function, fromElement); IfStatement ifElementNull = new IfStatement("if the element in the row type is null...");
.condition(invokeFunction(scope, cachedInstanceBinder, signature.getName(), function, element)) .ifTrue(new BytecodeBlock() .push(true)
public static BytecodeExpression invokeFunction(Scope scope, CachedInstanceBinder cachedInstanceBinder, String name, ScalarFunctionImplementation function, BytecodeExpression... parameters) { return invokeFunction(scope, cachedInstanceBinder, name, function, ImmutableList.copyOf(parameters)); }
public static ArrayMapBytecodeExpression map(Scope scope, CachedInstanceBinder cachedInstanceBinder, Type fromElementType, Type toElementType, Variable array, String elementFunctionName, ScalarFunctionImplementation elementFunction) { return map( scope, cachedInstanceBinder.getCallSiteBinder(), fromElementType, toElementType, array, element -> invokeFunction(scope, cachedInstanceBinder, elementFunctionName, elementFunction, element)); }