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.boolean
recordExternalReference
(long from, INativeMethodItem to, ReferenceType type) Record a reference from an internal location to an external method, with default flagsboolean
recordExternalReference
(long from, INativeMethodItem to, ReferenceType type, int flags) Record a reference from an internal location to an external methodboolean
recordInternalReference
(long from, long to, ReferenceType type) Record a reference from an internal location to an internal location, with default flagsboolean
recordInternalReference
(long from, long to, ReferenceType type, int flags) Record a reference from an internal location to an internal locationboolean
recordReference
(ReferenceLocation from, ReferenceLocation to, ReferenceType type) Record a reference between two locations with default flagsboolean
recordReference
(ReferenceLocation from, ReferenceLocation to, ReferenceType type, int flags) Record a reference between two locations.boolean
unrecordAllReferencesFrom
(long from) Unrecord all references from an internal locationboolean
Unrecord all references from a locationboolean
unrecordAllReferencesTo
(long to) Unrecord all references to an internal locationboolean
Unrecord all references to a locationboolean
unrecordReference
(long from, long to) Unrecord the reference between two internal locationsboolean
Unrecord 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)
-