W3cubDocs

/Groovy 3.0

[Java] Class ClosureSignatureConflictResolver

  • groovy.transform.stc.ClosureSignatureConflictResolver
public class ClosureSignatureConflictResolver
extends Object

If multiple candidate signatures are found after applying type hints, a conflict resolver can attempt to resolve the ambiguity.

Since:
2.5.0

Methods Summary

Methods
Type Params Return Type Name and description
public List<ClassNode> resolve(List<ClassNode> candidates, ClassNode receiver, Expression arguments, ClosureExpression closure, MethodNode methodNode, SourceUnit sourceUnit, CompilationUnit compilationUnit, String[] options)
Parameters:
candidates - the list of signatures as determined after applying type hints and performing initial inference calculations

Inherited Methods Summary

Inherited Methods
Methods inherited from class Name
class Object wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll

Method Detail

public List<ClassNode> resolve(List<ClassNode> candidates, ClassNode receiver, Expression arguments, ClosureExpression closure, MethodNode methodNode, SourceUnit sourceUnit, CompilationUnit compilationUnit, String[] options)

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 Closure parameter 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.

© 2003-2020 The Apache Software Foundation
Licensed under the Apache license.
https://docs.groovy-lang.org/3.0.7/html/gapi/groovy/transform/stc/ClosureSignatureConflictResolver.html