@HashCodeAndEqualsPlugin.Enhance public static class MethodDelegationBinder.Processor extends java.lang.Object implements MethodDelegationBinder.Record
MethodDelegationBinder
and an MethodDelegationBinder.AmbiguityResolver
.
The
Processor
will:
source
method using the MethodDelegationBinder
.AmbiguityResolver
.MethodDelegationBinder.Record.Illegal
Modifier and Type | Field and Description |
---|---|
private MethodDelegationBinder.AmbiguityResolver |
ambiguityResolver
The processor's ambiguity resolver.
|
private MethodDelegationBinder.BindingResolver |
bindingResolver
The binding resolver being used to select the relevant method binding.
|
private java.util.List<? extends MethodDelegationBinder.Record> |
records
The delegation records to consider.
|
Constructor and Description |
---|
Processor(java.util.List<? extends MethodDelegationBinder.Record> records,
MethodDelegationBinder.AmbiguityResolver ambiguityResolver,
MethodDelegationBinder.BindingResolver bindingResolver)
Creates a new processor.
|
Modifier and Type | Method and Description |
---|---|
MethodDelegationBinder.MethodBinding |
bind(Implementation.Target implementationTarget,
MethodDescription source,
MethodDelegationBinder.TerminationHandler terminationHandler,
MethodDelegationBinder.MethodInvoker methodInvoker,
Assigner assigner)
Attempts a binding of a source method to this compiled target.
|
private final java.util.List<? extends MethodDelegationBinder.Record> records
private final MethodDelegationBinder.AmbiguityResolver ambiguityResolver
private final MethodDelegationBinder.BindingResolver bindingResolver
public Processor(java.util.List<? extends MethodDelegationBinder.Record> records, MethodDelegationBinder.AmbiguityResolver ambiguityResolver, MethodDelegationBinder.BindingResolver bindingResolver)
records
- The delegation records to consider.ambiguityResolver
- The ambiguity resolver to apply.bindingResolver
- The binding resolver being used to select the relevant method binding.public MethodDelegationBinder.MethodBinding bind(Implementation.Target implementationTarget, MethodDescription source, MethodDelegationBinder.TerminationHandler terminationHandler, MethodDelegationBinder.MethodInvoker methodInvoker, Assigner assigner)
bind
in interface MethodDelegationBinder.Record
implementationTarget
- The target of the current implementation onto which this binding is to be applied.source
- The method that is to be bound to the target
method.terminationHandler
- The termination handler to apply.methodInvoker
- The method invoker to use.assigner
- The assigner to use.source
method to the target
method.