Class MethodGenUtils
java.lang.Object
io.micronaut.inject.writer.MethodGenUtils
-
Method Summary
Modifier and TypeMethodDescriptionstatic intcalculateNumberOfKotlinDefaultsMasks(List<ParameterElement> parameters) The number of Kotlin defaults masks.static booleanhasAllDefaultsParameters(List<ParameterElement> arguments) Checks whether every parameter has a default that this class can supply, so that a call may omit all of the arguments.static booleanhasCallerSideDefaultsParameters(List<ParameterElement> arguments) Checks if any parameter has a default value that can be materialised at the call site.static booleanhasDefaultsParameters(List<ParameterElement> arguments) Checks if any parameter declares a default that this class knows how to honour, either through Kotlin's calling convention or through a caller-side default value.static booleanhasKotlinDefaultsParameters(List<ParameterElement> arguments) Checks if parameter include Kotlin defaults.static io.micronaut.sourcegen.model.ExpressionDefinvokeBeanConstructor(ClassElement callingType, MethodElement constructor, boolean allowDefaults, @Nullable List<? extends io.micronaut.sourcegen.model.ExpressionDef> values, List<io.micronaut.sourcegen.model.StatementDef> additionalStatements) static io.micronaut.sourcegen.model.ExpressionDefinvokeBeanConstructor(MethodElement constructor, boolean requiresReflection, boolean allowDefaults, @Nullable List<? extends io.micronaut.sourcegen.model.ExpressionDef> values, @Nullable List<? extends io.micronaut.sourcegen.model.ExpressionDef> hasValuesExpressions, List<io.micronaut.sourcegen.model.StatementDef> additionalStatements) static io.micronaut.sourcegen.model.ExpressionDefinvokeKotlinDefaultMethod(ClassElement declaringType, MethodElement methodElement, io.micronaut.sourcegen.model.ExpressionDef target, List<? extends io.micronaut.sourcegen.model.ExpressionDef> values) static io.micronaut.sourcegen.model.StatementDefinvokeSuperConstructor(io.micronaut.sourcegen.model.ExpressionDef superVar, MethodElement constructor, boolean allowDefaults, @Nullable List<? extends io.micronaut.sourcegen.model.ExpressionDef> values, @Nullable List<? extends io.micronaut.sourcegen.model.ExpressionDef> hasValuesExpressions, List<io.micronaut.sourcegen.model.StatementDef> additionalStatements)
-
Method Details
-
calculateNumberOfKotlinDefaultsMasks
The number of Kotlin defaults masks.- Parameters:
parameters- The parameters- Returns:
- The number if masks
- Since:
- 4.6.2
-
hasKotlinDefaultsParameters
Checks if parameter include Kotlin defaults.- Parameters:
arguments- The arguments- Returns:
- true if include
- Since:
- 4.6.2
-
hasDefaultsParameters
Checks if any parameter declares a default that this class knows how to honour, either through Kotlin's calling convention or through a caller-side default value.- Parameters:
arguments- The arguments- Returns:
- true if any argument has a default this class can generate code for
- Since:
- 5.2.0
-
hasAllDefaultsParameters
Checks whether every parameter has a default that this class can supply, so that a call may omit all of the arguments.This is stricter than every parameter merely reporting
ParameterElement.hasDefault(): a language whose defaults are applied by the callee, without a calling convention this class implements, cannot have its arguments omitted here. Passing the default value of each parameter's type instead would silently construct an object with nulls and zeroes in place of the declared defaults.- Parameters:
arguments- The arguments- Returns:
- true if all arguments can be defaulted by generated code
- Since:
- 5.2.0
-
hasCallerSideDefaultsParameters
Checks if any parameter has a default value that can be materialised at the call site.- Parameters:
arguments- The arguments- Returns:
- true if any argument has a caller-side default value expression
- Since:
- 5.2.0
-
invokeKotlinDefaultMethod
public static io.micronaut.sourcegen.model.ExpressionDef invokeKotlinDefaultMethod(ClassElement declaringType, MethodElement methodElement, io.micronaut.sourcegen.model.ExpressionDef target, List<? extends io.micronaut.sourcegen.model.ExpressionDef> values) -
invokeBeanConstructor
public static io.micronaut.sourcegen.model.ExpressionDef invokeBeanConstructor(ClassElement callingType, MethodElement constructor, boolean allowDefaults, @Nullable List<? extends io.micronaut.sourcegen.model.ExpressionDef> values, List<io.micronaut.sourcegen.model.StatementDef> additionalStatements) -
invokeBeanConstructor
public static io.micronaut.sourcegen.model.ExpressionDef invokeBeanConstructor(MethodElement constructor, boolean requiresReflection, boolean allowDefaults, @Nullable List<? extends io.micronaut.sourcegen.model.ExpressionDef> values, @Nullable List<? extends io.micronaut.sourcegen.model.ExpressionDef> hasValuesExpressions, List<io.micronaut.sourcegen.model.StatementDef> additionalStatements) -
invokeSuperConstructor
public static io.micronaut.sourcegen.model.StatementDef invokeSuperConstructor(io.micronaut.sourcegen.model.ExpressionDef superVar, MethodElement constructor, boolean allowDefaults, @Nullable List<? extends io.micronaut.sourcegen.model.ExpressionDef> values, @Nullable List<? extends io.micronaut.sourcegen.model.ExpressionDef> hasValuesExpressions, List<io.micronaut.sourcegen.model.StatementDef> additionalStatements)
-