Package net.bytebuddy.dynamic.scaffold
Class MethodGraph.Compiler.Default.Key.Store<V>
- java.lang.Object
-
- net.bytebuddy.dynamic.scaffold.MethodGraph.Compiler.Default.Key.Store<V>
-
- Type Parameters:
V
- The type of the token used for deciding on method equality.
- Enclosing class:
- MethodGraph.Compiler.Default.Key<S>
@Enhance protected static class MethodGraph.Compiler.Default.Key.Store<V> extends Object
A store for collected methods that are identified by keys.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static interface
MethodGraph.Compiler.Default.Key.Store.Entry<W>
An entry of a key store.protected static class
MethodGraph.Compiler.Default.Key.Store.Graph
A graph implementation based on a key store.
-
Constructor Summary
Constructors Modifier Constructor Description protected
Store()
Creates an empty store.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected MethodGraph
asGraph(MethodGraph.Compiler.Default.Merger merger)
Transforms this store into a method graph by applying the given merger.protected MethodGraph.Compiler.Default.Key.Store<V>
combineWith(MethodGraph.Compiler.Default.Key.Store<V> store)
Combines this store with the given store.protected MethodGraph.Compiler.Default.Key.Store<V>
inject(MethodGraph.Compiler.Default.Key.Store<V> store)
Injects the given store into this store.protected MethodGraph.Compiler.Default.Key.Store<V>
registerTopLevel(List<? extends MethodDescription> methodDescriptions, MethodGraph.Compiler.Default.Harmonizer<V> harmonizer)
Registers a new top level method within this store.
-
-
-
Method Detail
-
registerTopLevel
protected MethodGraph.Compiler.Default.Key.Store<V> registerTopLevel(List<? extends MethodDescription> methodDescriptions, MethodGraph.Compiler.Default.Harmonizer<V> harmonizer)
Registers a new top level method within this store.- Parameters:
methodDescriptions
- The methods to register.harmonizer
- The harmonizer to use for determining method equality.- Returns:
- A store with the given method registered as a top-level method.
-
combineWith
protected MethodGraph.Compiler.Default.Key.Store<V> combineWith(MethodGraph.Compiler.Default.Key.Store<V> store)
Combines this store with the given store.- Parameters:
store
- The store to combine with this store.- Returns:
- A store representing a combination of this store and the given store.
-
inject
protected MethodGraph.Compiler.Default.Key.Store<V> inject(MethodGraph.Compiler.Default.Key.Store<V> store)
Injects the given store into this store.- Parameters:
store
- The key store to inject into this store.- Returns:
- A store that represents this store with the given store injected.
-
asGraph
protected MethodGraph asGraph(MethodGraph.Compiler.Default.Merger merger)
Transforms this store into a method graph by applying the given merger.- Parameters:
merger
- The merger to apply for resolving the representative for ambiguous resolutions.- Returns:
- The method graph that represents this key store.
-
-