Flexible code generation
First Claim
Patent Images
1. A machine-readable storage device embodying a computer program product for performing a method, said method comprising:
- generating, in a first declarative development environment, a first request to generate code for first application elements in the first declarative development environment, and generating, in a second declarative development environment, a second request to generate code for second application elements in the second declarative development environment, wherein the first application elements are defined by first declarative data in the first declarative development environment, and wherein the second application elements are defined by second declarative data in the second declarative development environment;
receiving the first declarative data in a first code generator core, and receiving the second declarative data in a second code generator core, wherein the first code generator core is configured to produce a first type of generated code corresponding to the first declarative development environment, wherein the second code generator core is configured to produce a second type of generated code corresponding to the second declarative development environment, and wherein the first code generator core has corresponding first configuration data and the second code generator core has corresponding second configuration data;
receiving, in a code generator framework, first parameter values corresponding to the first declarative data and second parameter values corresponding to the second declarative data;
loading, in the code generation framework, the first and second configuration data, wherein the code generation framework selects, based on the first configuration data, a first code generation task, and further selects, based on the second configuration data, a second code generation task, wherein the first code generation task encapsulates an associated first code generation technology and the first code generation technology is used to execute the first generation task, and wherein the second code generation task encapsulates an associated second code generation technology and the second code generation technology is used to execute the second generation task; and
generating first code for the first application elements based on the first parameter values and the first configuration data using the first code generation technology, and generating second code for the second application elements based on the second parameter values and the second configuration data using the second code generation technology.
1 Assignment
0 Petitions
Accused Products
Abstract
There are methods and apparatus, including computer program products, for a flexible generation framework. The generation framework encapsulates a variety of different code generation technologies within a common interface. This allows various types of generator cores operating in various development environments to be integrated into the framework, and enables the generation of code using various generating technologies.
31 Citations
14 Claims
-
1. A machine-readable storage device embodying a computer program product for performing a method, said method comprising:
-
generating, in a first declarative development environment, a first request to generate code for first application elements in the first declarative development environment, and generating, in a second declarative development environment, a second request to generate code for second application elements in the second declarative development environment, wherein the first application elements are defined by first declarative data in the first declarative development environment, and wherein the second application elements are defined by second declarative data in the second declarative development environment; receiving the first declarative data in a first code generator core, and receiving the second declarative data in a second code generator core, wherein the first code generator core is configured to produce a first type of generated code corresponding to the first declarative development environment, wherein the second code generator core is configured to produce a second type of generated code corresponding to the second declarative development environment, and wherein the first code generator core has corresponding first configuration data and the second code generator core has corresponding second configuration data; receiving, in a code generator framework, first parameter values corresponding to the first declarative data and second parameter values corresponding to the second declarative data; loading, in the code generation framework, the first and second configuration data, wherein the code generation framework selects, based on the first configuration data, a first code generation task, and further selects, based on the second configuration data, a second code generation task, wherein the first code generation task encapsulates an associated first code generation technology and the first code generation technology is used to execute the first generation task, and wherein the second code generation task encapsulates an associated second code generation technology and the second code generation technology is used to execute the second generation task; and generating first code for the first application elements based on the first parameter values and the first configuration data using the first code generation technology, and generating second code for the second application elements based on the second parameter values and the second configuration data using the second code generation technology. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer system comprising:
-
one or more processors; and memory, the memory storing a computer program, wherein the computer program; generates, in a first declarative development environment, a first request to generate code for first application elements in the first declarative development environment, and generates, in a second declarative development environment, a second request to generate code for second application elements in the second declarative development environment, wherein the first application elements are defined by first declarative data in the first declarative development environment, and wherein the second application elements are defined by second declarative data in the second declarative development environment; receives the first declarative data in a first code generator core, and receives the second declarative data in a second code generator core, wherein the first code generator core is configured to produce a first type of generated code corresponding to the first declarative development environment, wherein the second code generator core is configured to produce a second type of generated code corresponding to the second declarative development environment, and wherein the first code generator core has corresponding first configuration data and the second code generator core has corresponding second configuration data; receives, in a code generator framework, first parameter values corresponding to the first declarative data and second parameter values corresponding to the second declarative data; loads, in the code generation framework, the first and second configuration data, wherein the code generation framework selects, based on the first configuration data, a first code generation task, and further selects, based on the second configuration data, a second code generation task, wherein the first code generation task encapsulates an associated first code generation technology and the first code generation technology is used to execute the first generation task, and wherein the second code generation task encapsulates an associated second code generation technology and the second code generation technology is used to execute the second generation task; and generates first code for the first application elements based on the first parameter values and the first configuration data using the first code generation technology, and generating second code for the second application elements based on the second parameter values and the second configuration data using the second code generation technology. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
Specification