Kurt Young created FLINK-11831:
----------------------------------
Summary: Separate CodeGeneratorContext for different generation targets
Key: FLINK-11831
URL:
https://issues.apache.org/jira/browse/FLINK-11831 Project: Flink
Issue Type: Improvement
Components: SQL / Planner
Reporter: Kurt Young
Currently, we have one big `CodeGeneratorContext` during code generation, it contains all possible reused statements even for different code generation targets. For example, when we want to codeden a `Function`, we may use the `reusableOpenStatements` and `reusableCloseStatements`. And when we codegen an operator, we will use something like `reusableEndInputStatements`. It is error prone and hard to know what should be placed into codegened classes and what shouldn't.
I think we should have dedicated context for each codegen class. Like `FunctionCodegenContext` and `OperatorCodegenContext`, they can share a base class to reuse some common requirements, like reused class members.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)