Package org.exbin.xbup.core.ubnumber
Interface UBEReal
-
public interface UBEReal
Interface for LRUB-encoded real value with infinity constants.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description UBNatural
getBase()
Gets base part of real value.double
getDouble()
Gets double value.float
getFloat()
Gets float value.int
getInt()
Gets short integer value.long
getLong()
Gets long integer value.UBNatural
getMantissa()
Gets mantissa part of real value.boolean
isInfinity()
Reads positive or negative infinity flag.boolean
isNegativeInfinity()
Reads negative infinity flag.boolean
isPositiveInfinity()
Reads positive infinity flag.boolean
isZero()
Returns if value is zero.void
setNegativeInfinity()
Sets value to negative infinity constant.void
setPositiveInfinity()
Sets value to positive infinity constant.void
setValue(double value)
Sets double value.void
setValue(float value)
Sets float value.void
setValue(int value)
Sets integer value.void
setValue(long value)
Sets long integer value.
-
-
-
Method Detail
-
getInt
int getInt() throws UBOverFlowException
Gets short integer value.- Returns:
- integer value
- Throws:
UBOverFlowException
- if value is out of range
-
getLong
long getLong() throws UBOverFlowException
Gets long integer value.- Returns:
- long integer value
- Throws:
UBOverFlowException
- if value is out of range
-
isZero
boolean isZero()
Returns if value is zero.- Returns:
- true if value equals zero
-
getFloat
float getFloat() throws UBOverFlowException
Gets float value.- Returns:
- float value
- Throws:
UBOverFlowException
- if value is out of range
-
getDouble
double getDouble() throws UBOverFlowException
Gets double value.- Returns:
- double value
- Throws:
UBOverFlowException
- if value is out of range
-
setValue
void setValue(int value) throws UBOverFlowException
Sets integer value.- Parameters:
value
- integer value- Throws:
UBOverFlowException
-
setValue
void setValue(long value) throws UBOverFlowException
Sets long integer value.- Parameters:
value
- long integer value- Throws:
UBOverFlowException
-
setValue
void setValue(float value) throws UBOverFlowException
Sets float value.- Parameters:
value
- float value- Throws:
UBOverFlowException
-
setValue
void setValue(double value) throws UBOverFlowException
Sets double value.- Parameters:
value
- double value- Throws:
UBOverFlowException
-
getBase
@Nonnull UBNatural getBase()
Gets base part of real value.- Returns:
- base part
-
getMantissa
@Nonnull UBNatural getMantissa()
Gets mantissa part of real value.- Returns:
- mantissa part
-
isInfinity
boolean isInfinity()
Reads positive or negative infinity flag.- Returns:
- true if value represents infinity
-
isPositiveInfinity
boolean isPositiveInfinity()
Reads positive infinity flag.- Returns:
- true if value represents infinity
-
isNegativeInfinity
boolean isNegativeInfinity()
Reads negative infinity flag.- Returns:
- true if value represents infinity
-
setPositiveInfinity
void setPositiveInfinity()
Sets value to positive infinity constant.
-
setNegativeInfinity
void setNegativeInfinity()
Sets value to negative infinity constant.
-
-