1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.javagen.agile.core;
17
18 import org.javagen.agile.core.model.Model;
19
20 /***
21 * The generator is the basis for task-specific, decoupled, units of work in the JavaGen Light code generator.
22 * Generators are configured sequentially in the <code>GeneratorPipeline</code>, forming a code generation assembly line.
23 *
24 * @author Richard Easterling
25 */
26 public interface Generator {
27
28 /***
29 * Entry point for generation task.
30 *
31 * @param input the model instance to generate on - parent nodes will be ignored.
32 * @return the result of the task - usualy the same as the input model.
33 */
34 Model gen(Model input);
35
36 }