Package org.eclipse.cdt.utils
Class Addr64
- java.lang.Object
-
- org.eclipse.cdt.utils.Addr64
-
- All Implemented Interfaces:
Serializable,Comparable<Object>,IAddress
public class Addr64 extends Object implements IAddress, Serializable
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static Addr64MAXstatic BigIntegerMAX_OFFSETstatic Addr64ZERO
-
Constructor Summary
Constructors Constructor Description Addr64(byte[] addrBytes)Addr64(long addr)Create an address represented by long bits.Addr64(String addr)Addr64(String addr, boolean truncate)Addr64(String addr, int radix)Addr64(String addr, int radix, boolean truncate)Addr64(BigInteger rawaddress)Addr64(BigInteger rawaddress, boolean truncate)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description IAddressadd(long offset)Adds offset to address and returns new address object which is the result
Note: This method has an offset limit of Long.MAX and Long.MIN, which under some addressing schemes may impose an unnecessary limitation, seeIAddress.add(BigInteger offset)to handle larger offsets.IAddressadd(BigInteger offset)Adds offset to address and returns new address object which is the resultintcompareTo(Object other)BigIntegerdistanceTo(IAddress other)Returns distance to address.booleanequals(Object x)Returns whether this address equals the given object.intgetCharsNum()Returns amount of symbols in hex representation.BigIntegergetMaxOffset()Returns maximal offset possible for address.intgetSize()Returns the address size in bytes.BigIntegergetValue()Returns the value of the address.inthashCode()booleanisMax()Return true if address is maximal, i.e.booleanisZero()Return true if address is zero, i.e.StringtoBinaryAddressString()Converts address to the binary representation with '0b' prefix and with all leading zeros.StringtoHexAddressString()Converts address to the hex representation with '0x' prefix and with all leading zeros.StringtoOctalAddressString()StringtoString()Identical to toString(10)StringtoString(int radix)Converts address to string as an unsigned number with given radix
-
-
-
Field Detail
-
ZERO
public static final Addr64 ZERO
-
MAX
public static final Addr64 MAX
-
MAX_OFFSET
public static final BigInteger MAX_OFFSET
-
-
Constructor Detail
-
Addr64
public Addr64(byte[] addrBytes)
-
Addr64
public Addr64(BigInteger rawaddress)
-
Addr64
public Addr64(BigInteger rawaddress, boolean truncate)
-
Addr64
public Addr64(String addr)
-
Addr64
public Addr64(long addr)
Create an address represented by long bits. Signed bit will be used as unsigned extension, if you don't want it mask it before passing here.- Since:
- 5.9
-
Addr64
public Addr64(String addr, boolean truncate)
-
Addr64
public Addr64(String addr, int radix)
-
Addr64
public Addr64(String addr, int radix, boolean truncate)
-
-
Method Detail
-
add
public IAddress add(BigInteger offset)
Description copied from interface:IAddressAdds offset to address and returns new address object which is the result
-
add
public IAddress add(long offset)
Description copied from interface:IAddressAdds offset to address and returns new address object which is the result
Note: This method has an offset limit of Long.MAX and Long.MIN, which under some addressing schemes may impose an unnecessary limitation, seeIAddress.add(BigInteger offset)to handle larger offsets.
-
getMaxOffset
public BigInteger getMaxOffset()
Description copied from interface:IAddressReturns maximal offset possible for address. The offset should be identical for all addresses of given class.- Specified by:
getMaxOffsetin interfaceIAddress- Returns:
- the max offset for this address class
-
distanceTo
public BigInteger distanceTo(IAddress other)
Description copied from interface:IAddressReturns distance to address. Distance may be positive or negative- Specified by:
distanceToin interfaceIAddress- Parameters:
other- address which distance is calculated to.- Returns:
- distance to address
-
isMax
public boolean isMax()
Description copied from interface:IAddressReturn true if address is maximal, i.e. maximal possible
-
isZero
public boolean isZero()
Description copied from interface:IAddressReturn true if address is zero, i.e. minimal possible
-
getValue
public BigInteger getValue()
Description copied from interface:IAddressReturns the value of the address.
-
compareTo
public int compareTo(Object other)
- Specified by:
compareToin interfaceComparable<Object>
-
equals
public boolean equals(Object x)
Description copied from interface:IAddressReturns whether this address equals the given object.
-
toString
public String toString()
Description copied from interface:IAddressIdentical to toString(10)
-
toString
public String toString(int radix)
Description copied from interface:IAddressConverts address to string as an unsigned number with given radix
-
toHexAddressString
public String toHexAddressString()
Description copied from interface:IAddressConverts address to the hex representation with '0x' prefix and with all leading zeros. The length of returned string should be the same for all addresses of given class. I.e. 10 for 32-bit addresses and 18 for 64-bit addresses- Specified by:
toHexAddressStringin interfaceIAddress
-
toOctalAddressString
public String toOctalAddressString()
- Since:
- 5.4
-
toBinaryAddressString
public String toBinaryAddressString()
Description copied from interface:IAddressConverts address to the binary representation with '0b' prefix and with all leading zeros. The length of returned string should be the same for all addresses of given class. I.e. 34 for 32-bit addresses and 66 for 64-bit addresses- Specified by:
toBinaryAddressStringin interfaceIAddress
-
getCharsNum
public int getCharsNum()
Description copied from interface:IAddressReturns amount of symbols in hex representation. Is identical to toHexAddressString().length(). It is present for performance purpose.- Specified by:
getCharsNumin interfaceIAddress- Returns:
- the number of character symbols to represent this address in hex.
-
-