Package ghidra.program.model.address
Interface AddressRange
-
- All Superinterfaces:
java.lang.Comparable<AddressRange>
,java.lang.Iterable<Address>
- All Known Implementing Classes:
AddressRangeImpl
public interface AddressRange extends java.lang.Comparable<AddressRange>, java.lang.Iterable<Address>
The AddressRange interface is used by any object that represents a contiguous inclusive range of addresses from a minimum address to a maximum address. The entire range must fall within a single address space.- Since:
- 2000-02-16
- See Also:
AddressRangeImpl
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description int
compareTo(Address addr)
Compares the given address to this address range.boolean
contains(Address addr)
Returns true if the given address is contained in the range.AddressSpace
getAddressSpace()
java.math.BigInteger
getBigLength()
Returns the number of addresses as a BigInteger.long
getLength()
Returns the number of addresses in the range.Address
getMaxAddress()
Address
getMinAddress()
AddressRange
intersect(AddressRange range)
Computes the intersection of this range with another.AddressRange
intersectRange(Address start, Address end)
Computes the intersection of this range with another.boolean
intersects(AddressRange range)
Returns true if the given range intersects this range.boolean
intersects(Address start, Address end)
Returns true if the given range intersects this range.
-
-
-
Method Detail
-
getLength
long getLength()
Returns the number of addresses in the range.
-
getBigLength
java.math.BigInteger getBigLength()
Returns the number of addresses as a BigInteger.- Returns:
- the number of addresses as a BigInteger.
-
contains
boolean contains(Address addr)
Returns true if the given address is contained in the range.
-
intersect
AddressRange intersect(AddressRange range)
Computes the intersection of this range with another.- Parameters:
range
- the range to intersect this range with- Returns:
- AddressRange the intersection or null if the ranges do not intersect.
-
intersectRange
AddressRange intersectRange(Address start, Address end)
Computes the intersection of this range with another.- Parameters:
start
- of rangeend
- end of range- Returns:
- AddressRange the intersection or null if the ranges do not intersect.
-
intersects
boolean intersects(AddressRange range)
Returns true if the given range intersects this range.- Parameters:
range
- the range to test for intersection with.
-
intersects
boolean intersects(Address start, Address end)
Returns true if the given range intersects this range.- Parameters:
start
- the first address in the range to test for intersection.end
- the last address in the range to test for intersection.
-
compareTo
int compareTo(Address addr)
Compares the given address to this address range.- Parameters:
addr
- the address to compare.- Returns:
- a negative integer if the address is greater than the maximum range address, zero if the address is in the range, and a positive integer if the address is less than minimum range address.
-
getMaxAddress
Address getMaxAddress()
- Returns:
- the maximum address in the range.
-
getMinAddress
Address getMinAddress()
- Returns:
- the minimum address in the range.
-
getAddressSpace
AddressSpace getAddressSpace()
- Returns:
- address space this range resides within
-
-