U
- The type of the harmonized key to determine method equality.@HashCodeAndEqualsPlugin.Enhance public static class MethodGraph.Compiler.Default.Key.Store.Entry.Ambiguous<U> extends Object implements MethodGraph.Compiler.Default.Key.Store.Entry<U>
Modifier and Type | Class and Description |
---|---|
protected static class |
MethodGraph.Compiler.Default.Key.Store.Entry.Ambiguous.Node
A node implementation representing an ambiguous method resolution.
|
MethodGraph.Compiler.Default.Key.Store.Entry.Ambiguous<U>, MethodGraph.Compiler.Default.Key.Store.Entry.Initial<U>, MethodGraph.Compiler.Default.Key.Store.Entry.Resolved<U>
Modifier | Constructor and Description |
---|---|
protected |
Ambiguous(MethodGraph.Compiler.Default.Key.Harmonized<U> key,
LinkedHashSet<MethodDescription> methodDescriptions,
Visibility visibility)
Creates a new ambiguous entry.
|
Modifier and Type | Method and Description |
---|---|
MethodGraph.Node |
asNode(MethodGraph.Compiler.Default.Merger merger)
Transforms this entry into a node.
|
MethodGraph.Compiler.Default.Key.Store.Entry<U> |
extendBy(MethodDescription methodDescription,
MethodGraph.Compiler.Default.Harmonizer<U> harmonizer)
Extends this entry by the given method.
|
Set<MethodDescription> |
getCandidates()
Returns all candidate methods represented by this entry.
|
MethodGraph.Compiler.Default.Key.Harmonized<U> |
getKey()
Returns the harmonized key of this entry.
|
Visibility |
getVisibility()
Returns the minimal visibility of this entry.
|
MethodGraph.Compiler.Default.Key.Store.Entry<U> |
inject(MethodGraph.Compiler.Default.Key.Harmonized<U> key,
Visibility visibility)
Injects the given key into this entry.
|
protected static <Q> MethodGraph.Compiler.Default.Key.Store.Entry<Q> |
of(MethodGraph.Compiler.Default.Key.Harmonized<Q> key,
MethodDescription left,
MethodDescription right,
Visibility visibility)
Creates a new ambiguous entry if both provided entries are not considered to be a bridge of one another.
|
protected Ambiguous(MethodGraph.Compiler.Default.Key.Harmonized<U> key, LinkedHashSet<MethodDescription> methodDescriptions, Visibility visibility)
key
- The harmonized key this entry represents.methodDescriptions
- A set of ambiguous methods that this entry represents.visibility
- The minimal required visibility for this method.protected static <Q> MethodGraph.Compiler.Default.Key.Store.Entry<Q> of(MethodGraph.Compiler.Default.Key.Harmonized<Q> key, MethodDescription left, MethodDescription right, Visibility visibility)
Q
- The type of the token of the harmonized key to determine method equality.key
- The key of the entry to be created.left
- The left method to be considered.right
- The right method to be considered.visibility
- The entry's minimal visibility.public MethodGraph.Compiler.Default.Key.Harmonized<U> getKey()
getKey
in interface MethodGraph.Compiler.Default.Key.Store.Entry<U>
public Set<MethodDescription> getCandidates()
getCandidates
in interface MethodGraph.Compiler.Default.Key.Store.Entry<U>
public Visibility getVisibility()
getVisibility
in interface MethodGraph.Compiler.Default.Key.Store.Entry<U>
public MethodGraph.Compiler.Default.Key.Store.Entry<U> extendBy(MethodDescription methodDescription, MethodGraph.Compiler.Default.Harmonizer<U> harmonizer)
extendBy
in interface MethodGraph.Compiler.Default.Key.Store.Entry<U>
methodDescription
- The method description to extend this entry with.harmonizer
- The harmonizer to use for determining method equality.public MethodGraph.Compiler.Default.Key.Store.Entry<U> inject(MethodGraph.Compiler.Default.Key.Harmonized<U> key, Visibility visibility)
inject
in interface MethodGraph.Compiler.Default.Key.Store.Entry<U>
key
- The key to inject into this entry.visibility
- The entry's minimal visibility.public MethodGraph.Node asNode(MethodGraph.Compiler.Default.Merger merger)
asNode
in interface MethodGraph.Compiler.Default.Key.Store.Entry<U>
merger
- The merger to use for determining the representative method of an ambiguous node.Copyright © 2014–2020. All rights reserved.