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, io.airlift.bytecode.ClassDefinition classDefinition, List<io.airlift.bytecode.Parameter> contextArguments) -
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) io.airlift.bytecode.ClassDefinitionList<io.airlift.bytecode.Parameter> 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, io.airlift.bytecode.ClassDefinition classDefinition, List<io.airlift.bytecode.Parameter> contextArguments)
-
-
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() -
getClassDefinition
public io.airlift.bytecode.ClassDefinition getClassDefinition() -
getRowExpressionCompiler
-
getCachedInstanceBinder
-
getFunctionManager
-
getContextArguments
-