Package net.bytebuddy.dynamic.scaffold
Class MethodGraph.Compiler.Default.Key.Store.Entry.Resolved<U>
- java.lang.Object
-
- net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Store.Entry.Resolved<U>
-
- Type Parameters:
U
- The type of the harmonized key to determine method equality.
- All Implemented Interfaces:
MethodGraph.Compiler.Default.Key.Store.Entry<U>
- Enclosing interface:
- MethodGraph.Compiler.Default.Key.Store.Entry<W>
@Enhance public static class MethodGraph.Compiler.Default.Key.Store.Entry.Resolved<U> extends Object implements MethodGraph.Compiler.Default.Key.Store.Entry<U>
An entry representing a non-ambiguous node resolution.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
MethodGraph.Compiler.Default.Key.Store.Entry.Resolved.Node
A node implementation representing a non-ambiguous method.-
Nested classes/interfaces inherited from interface net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Store.Entry
MethodGraph.Compiler.Default.Key.Store.Entry.Ambiguous<U>, MethodGraph.Compiler.Default.Key.Store.Entry.Initial<U>, MethodGraph.Compiler.Default.Key.Store.Entry.Resolved<U>
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
Resolved(MethodGraph.Compiler.Default.Key.Harmonized<U> key, MethodDescription methodDescription, Visibility visibility, boolean madeVisible)
Creates a new resolved entry.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method 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.
-
-
-
Constructor Detail
-
Resolved
protected Resolved(MethodGraph.Compiler.Default.Key.Harmonized<U> key, MethodDescription methodDescription, Visibility visibility, boolean madeVisible)
Creates a new resolved entry.- Parameters:
key
- The harmonized key this entry represents.methodDescription
- The non-ambiguous, representative method of this entry.visibility
- The minimal required visibility for this method.madeVisible
-true
if this entry's representative was made visible by a visibility bridge.
-
-
Method Detail
-
getKey
public MethodGraph.Compiler.Default.Key.Harmonized<U> getKey()
Returns the harmonized key of this entry.- Specified by:
getKey
in interfaceMethodGraph.Compiler.Default.Key.Store.Entry<U>
- Returns:
- The harmonized key of this entry.
-
getCandidates
public Set<MethodDescription> getCandidates()
Returns all candidate methods represented by this entry.- Specified by:
getCandidates
in interfaceMethodGraph.Compiler.Default.Key.Store.Entry<U>
- Returns:
- All candidate methods represented by this entry.
-
getVisibility
public Visibility getVisibility()
Returns the minimal visibility of this entry.- Specified by:
getVisibility
in interfaceMethodGraph.Compiler.Default.Key.Store.Entry<U>
- Returns:
- The minimal visibility of this entry.
-
extendBy
public MethodGraph.Compiler.Default.Key.Store.Entry<U> extendBy(MethodDescription methodDescription, MethodGraph.Compiler.Default.Harmonizer<U> harmonizer)
Extends this entry by the given method.- Specified by:
extendBy
in interfaceMethodGraph.Compiler.Default.Key.Store.Entry<U>
- Parameters:
methodDescription
- The method description to extend this entry with.harmonizer
- The harmonizer to use for determining method equality.- Returns:
- This key extended by the given method.
-
inject
public MethodGraph.Compiler.Default.Key.Store.Entry<U> inject(MethodGraph.Compiler.Default.Key.Harmonized<U> key, Visibility visibility)
Injects the given key into this entry.- Specified by:
inject
in interfaceMethodGraph.Compiler.Default.Key.Store.Entry<U>
- Parameters:
key
- The key to inject into this entry.visibility
- The entry's minimal visibility.- Returns:
- This entry extended with the given key.
-
asNode
public MethodGraph.Node asNode(MethodGraph.Compiler.Default.Merger merger)
Transforms this entry into a node.- Specified by:
asNode
in interfaceMethodGraph.Compiler.Default.Key.Store.Entry<U>
- Parameters:
merger
- The merger to use for determining the representative method of an ambiguous node.- Returns:
- The resolved node.
-
-