Interface IReferenceManager
A manager of cross-references for code and data.
-
Method Summary
Modifier and TypeMethodDescriptionSet<? extends IReference>getReferencesFrom(long from) Get references from an internal location.Set<? extends IReference>Get references from a location.Set<? extends IReference>getReferencesTo(long target) Get references to an internal location.Set<? extends IReference>Get references to a location.Set<? extends IReference>Get references to an external method.booleanrecordExternalReference(long from, INativeMethodItem to, ReferenceType type) Record a reference from an internal location to an external method, with default flagsbooleanrecordExternalReference(long from, INativeMethodItem to, ReferenceType type, int flags) Record a reference from an internal location to an external methodbooleanrecordInternalReference(long from, long to, ReferenceType type) Record a reference from an internal location to an internal location, with default flagsbooleanrecordInternalReference(long from, long to, ReferenceType type, int flags) Record a reference from an internal location to an internal locationbooleanrecordReference(ReferenceLocation from, ReferenceLocation to, ReferenceType type) Record a reference between two locations with default flagsbooleanrecordReference(ReferenceLocation from, ReferenceLocation to, ReferenceType type, int flags) Record a reference between two locations.booleanunrecordAllReferencesFrom(long from) Unrecord all references from an internal locationbooleanUnrecord all references from a locationbooleanunrecordAllReferencesTo(long to) Unrecord all references to an internal locationbooleanUnrecord all references to a locationbooleanunrecordReference(long from, long to) Unrecord the reference between two internal locationsbooleanUnrecord the reference between two locations
-
Method Details
-
recordInternalReference
Record a reference from an internal location to an internal location, with default flags- Returns:
- true if reference was registered, false otherwise (because there is already a reference between these locations)
-
recordInternalReference
Record a reference from an internal location to an internal location- Returns:
- true if reference was registered, false otherwise (because there is already a reference between these locations)
-
recordExternalReference
Record a reference from an internal location to an external method, with default flags- Returns:
- true if reference was registered, false otherwise (because there is already a reference between these locations)
-
recordExternalReference
Record a reference from an internal location to an external method- Returns:
- true if reference was registered, false otherwise (because there is already a reference between these locations)
-
recordReference
Record a reference between two locations with default flags- Returns:
- true if reference was registered, false otherwise (because there is already a reference between these locations)
-
recordReference
boolean recordReference(ReferenceLocation from, ReferenceLocation to, ReferenceType type, int flags) Record a reference between two locations. Never null.- Returns:
- true if reference was registered, false otherwise (because there is already a reference between these locations)
-
getReferencesTo
Get references to an internal location. Never null. -
getReferencesToExternalMethod
Get references to an external method. Never null. -
getReferencesTo
Get references to a location. Never null. -
getReferencesFrom
Get references from an internal location. Never null. -
getReferencesFrom
Get references from a location. Never null. -
unrecordAllReferencesFrom
boolean unrecordAllReferencesFrom(long from) Unrecord all references from an internal location- Returns:
- true if reference was unrecorded, false otherwise (because there is no such reference)
-
unrecordAllReferencesFrom
Unrecord all references from a location- Returns:
- true if reference was unrecorded, false otherwise (because there is no such reference)
-
unrecordAllReferencesTo
boolean unrecordAllReferencesTo(long to) Unrecord all references to an internal location- Returns:
- true if reference was unrecorded, false otherwise (because there is no such reference)
-
unrecordAllReferencesTo
Unrecord all references to a location- Returns:
- true if reference was unrecorded, false otherwise (because there is no such reference)
-
unrecordReference
boolean unrecordReference(long from, long to) Unrecord the reference between two internal locations- Returns:
- true if reference was unrecorded, false otherwise (because there is no such reference)
-
unrecordReference
Unrecord the reference between two locations- Returns:
- true if reference was unrecorded, false otherwise (because there is no such reference)
-