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)