public final class InterfaceMethodSignature extends Object
Modifier and Type | Field and Description |
---|---|
private Atom |
descriptor
Descriptor of the interface method
|
private static ImmutableEntryHashSetRVM<InterfaceMethodSignature> |
dictionary
Used to canonicalize InterfaceMethodSignatures
|
private int |
id
Id of this interface method signature (not used in hashCode or equals).
|
private Atom |
name
Name of the interface method
|
private static int |
nextId
Used to assign ids.
|
Modifier | Constructor and Description |
---|---|
private |
InterfaceMethodSignature(Atom name,
Atom descriptor,
int id) |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object other) |
static InterfaceMethodSignature |
findOrCreate(MemberReference ref)
Find or create an interface method signature for the given method reference.
|
Atom |
getDescriptor() |
int |
getId() |
Offset |
getIMTOffset()
If using embedded IMTs, Get offset of interface method slot in TIB.
|
Atom |
getName() |
int |
hashCode() |
String |
toString() |
private static final ImmutableEntryHashSetRVM<InterfaceMethodSignature> dictionary
private static int nextId
private final Atom descriptor
private final int id
private InterfaceMethodSignature(Atom name, Atom descriptor, int id)
public static InterfaceMethodSignature findOrCreate(MemberReference ref)
ref
- A reference to a supposed interface methodpublic Atom getDescriptor()
public int getId()
public Offset getIMTOffset()
TODO!! replace this stupid offset assignment algorithm with something more reasonable.