Package io.trino.sql.gen
Class BytecodeGeneratorContext
java.lang.Object
io.trino.sql.gen.BytecodeGeneratorContext
-
Constructor Summary
ConstructorsConstructorDescriptionBytecodeGeneratorContext(RowExpressionCompiler rowExpressionCompiler, io.airlift.bytecode.Scope scope, CallSiteBinder callSiteBinder, CachedInstanceBinder cachedInstanceBinder, FunctionManager functionManager) -
Method Summary
Modifier and TypeMethodDescriptionio.airlift.bytecode.BytecodeNodegenerate(RowExpression expression) io.airlift.bytecode.BytecodeNodegenerateCall(ResolvedFunction resolvedFunction, List<io.airlift.bytecode.BytecodeNode> arguments) Generates a function call with null handling, automatic binding of session parameter, etc.io.airlift.bytecode.BytecodeNodegenerateFullCall(ResolvedFunction resolvedFunction, List<RowExpression> arguments) getScalarFunctionImplementation(ResolvedFunction resolvedFunction, InvocationConvention invocationConvention) io.airlift.bytecode.ScopegetScope()io.airlift.bytecode.VariablewasNull()
-
Constructor Details
-
BytecodeGeneratorContext
public BytecodeGeneratorContext(RowExpressionCompiler rowExpressionCompiler, io.airlift.bytecode.Scope scope, CallSiteBinder callSiteBinder, CachedInstanceBinder cachedInstanceBinder, FunctionManager functionManager)
-
-
Method Details
-
getScope
public io.airlift.bytecode.Scope getScope() -
getCallSiteBinder
-
generate
-
getScalarFunctionImplementation
public ScalarFunctionImplementation getScalarFunctionImplementation(ResolvedFunction resolvedFunction, InvocationConvention invocationConvention) -
generateCall
public io.airlift.bytecode.BytecodeNode generateCall(ResolvedFunction resolvedFunction, List<io.airlift.bytecode.BytecodeNode> arguments) Generates a function call with null handling, automatic binding of session parameter, etc. -
generateFullCall
public io.airlift.bytecode.BytecodeNode generateFullCall(ResolvedFunction resolvedFunction, List<RowExpression> arguments) -
wasNull
public io.airlift.bytecode.Variable wasNull()
-