java.lang.Object
io.helidon.codegen.Codegen
Central piece of code processing and generation.
This type loads
extension providers, and invokes
each CodegenExtension with appropriate types and annotations.-
Method Summary
Modifier and TypeMethodDescriptionstatic Codegencreate(CodegenContext ctx, TypeName generator) Create a new instance of the top level Codegen.voidProcess all types discovered.voidFinish processing.A set of package prefixes (expected to end with a.).A set of annotation types.Set of supported options by all extensions.
-
Method Details
-
create
Create a new instance of the top level Codegen. This type discovers allCodegenExtensionProvidersand invokes the providedCodegenExtensionsas needed.- Parameters:
ctx- code processing and generation contextgenerator- type name of the invoking generator (such as maven plugin, annotation procesor, command line tool)- Returns:
- a new codegen instance
-
supportedOptions
Set of supported options by all extensions.- Returns:
- supported options
-
process
Process all types discovered. This method analyzes the types and invokes each extension with the correct subset.- Parameters:
allTypes- all types for this processing round
-
processingOver
public void processingOver()Finish processing. No additional rounds will be done. -
supportedAnnotations
A set of annotation types.- Returns:
- set of annotations that should be processed
-
supportedAnnotationPackagePrefixes
A set of package prefixes (expected to end with a.).- Returns:
- set of package prefixes of annotations that should be processed
-