Package groovy.transform.stc
Class PickFirstResolver
- java.lang.Object
- 
- groovy.transform.stc.ClosureSignatureConflictResolver
- 
- groovy.transform.stc.PickFirstResolver
 
 
- 
 public class PickFirstResolver extends ClosureSignatureConflictResolver Returns the first of several candidates found. This is useful if several types should be supported but only the first should be the default/inferred type. Other options in the list are obtained through explicitly typing the parameter(s).- Since:
- 2.5.0
 
- 
- 
Constructor SummaryConstructors Constructor Description PickFirstResolver()
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description List<ClassNode[]>resolve(List<ClassNode[]> candidates, ClassNode receiver, Expression arguments, ClosureExpression closure, MethodNode methodNode, SourceUnit sourceUnit, CompilationUnit compilationUnit, String[] options)
 
- 
- 
- 
Method Detail- 
resolvepublic List<ClassNode[]> resolve(List<ClassNode[]> candidates, ClassNode receiver, Expression arguments, ClosureExpression closure, MethodNode methodNode, SourceUnit sourceUnit, CompilationUnit compilationUnit, String[] options) - Overrides:
- resolvein class- ClosureSignatureConflictResolver
- Parameters:
- candidates- the list of signatures as determined after applying type hints and performing initial inference calculations
- receiver- the receiver the method is being called on
- arguments- the arguments for the closure
- closure- the closure expression under analysis
- methodNode- the method for which a- Closureparameter was annotated with- ClosureParams
- sourceUnit- the source unit of the file being compiled
- compilationUnit- the compilation unit of the file being compiled
- options- the options, corresponding to the- ClosureParams.options()found on the annotation
- Returns:
- a non-null list of signatures, where a signature corresponds to an array of class nodes, each of them matching a parameter. A list with more than one element indicates that all ambiguities haven't yet been resolved.
 
 
- 
 
-