Package ch.randelshofer.fastdoubleparser
Class ConfigurableDoubleBitsFromByteArrayUtf8
- java.lang.Object
-
- ch.randelshofer.fastdoubleparser.AbstractNumberParser
-
- ch.randelshofer.fastdoubleparser.AbstractFloatValueParser
-
- ch.randelshofer.fastdoubleparser.AbstractConfigurableFloatingPointBitsFromByteArrayUtf8
-
- ch.randelshofer.fastdoubleparser.ConfigurableDoubleBitsFromByteArrayUtf8
-
final class ConfigurableDoubleBitsFromByteArrayUtf8 extends AbstractConfigurableFloatingPointBitsFromByteArrayUtf8
-
-
Field Summary
-
Fields inherited from class ch.randelshofer.fastdoubleparser.AbstractFloatValueParser
MAX_EXPONENT_NUMBER, MAX_INPUT_LENGTH, MINIMAL_NINETEEN_DIGIT_INTEGER
-
Fields inherited from class ch.randelshofer.fastdoubleparser.AbstractNumberParser
CHAR_TO_HEX_MAP, DECIMAL_POINT_CLASS, ILLEGAL_OFFSET_OR_ILLEGAL_LENGTH, OTHER_CLASS, SYNTAX_ERROR, SYNTAX_ERROR_BITS, VALUE_EXCEEDS_LIMITS
-
-
Constructor Summary
Constructors Constructor Description ConfigurableDoubleBitsFromByteArrayUtf8(NumberFormatSymbols symbols, boolean ignoreCase)Creates a new instance.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) longnan()(package private) longnegativeInfinity()(package private) longpositiveInfinity()(package private) longvalueOfFloatLiteral(byte[] str, int integerStartIndex, int integerEndIndex, int fractionStartIndex, int fractionEndIndex, boolean isSignificandNegative, long significand, int exponent, boolean isSignificandTruncated, int exponentOfTruncatedSignificand, int exponentValue, int startIndex, int endIndex)Computes a float value from the given components of a decimal float literal.-
Methods inherited from class ch.randelshofer.fastdoubleparser.AbstractConfigurableFloatingPointBitsFromByteArrayUtf8
parseFloatingPointLiteral, slowPathToDouble
-
Methods inherited from class ch.randelshofer.fastdoubleparser.AbstractNumberParser
charAt, charAt, charAt, checkBounds, checkBounds, lookupHex, lookupHex
-
-
-
-
Constructor Detail
-
ConfigurableDoubleBitsFromByteArrayUtf8
public ConfigurableDoubleBitsFromByteArrayUtf8(NumberFormatSymbols symbols, boolean ignoreCase)
Creates a new instance.
-
-
Method Detail
-
nan
long nan()
- Specified by:
nanin classAbstractConfigurableFloatingPointBitsFromByteArrayUtf8- Returns:
- a NaN constant in the specialized type wrapped in a
long
-
negativeInfinity
long negativeInfinity()
- Specified by:
negativeInfinityin classAbstractConfigurableFloatingPointBitsFromByteArrayUtf8- Returns:
- a negative infinity constant in the specialized type wrapped in a
long
-
positiveInfinity
long positiveInfinity()
- Specified by:
positiveInfinityin classAbstractConfigurableFloatingPointBitsFromByteArrayUtf8- Returns:
- a positive infinity constant in the specialized type wrapped in a
long
-
valueOfFloatLiteral
long valueOfFloatLiteral(byte[] str, int integerStartIndex, int integerEndIndex, int fractionStartIndex, int fractionEndIndex, boolean isSignificandNegative, long significand, int exponent, boolean isSignificandTruncated, int exponentOfTruncatedSignificand, int exponentValue, int startIndex, int endIndex)Description copied from class:AbstractConfigurableFloatingPointBitsFromByteArrayUtf8Computes a float value from the given components of a decimal float literal.- Specified by:
valueOfFloatLiteralin classAbstractConfigurableFloatingPointBitsFromByteArrayUtf8- Parameters:
str- the string that contains the float literal (and maybe more)integerStartIndex- the start index (inclusive) of the integer part of the significand inside the stringintegerEndIndex- the end index (exclusive) of the integer part of the significand the stringfractionStartIndex- the start index (inclusive) of the fraction part of the significand inside the stringfractionEndIndex- the end index (exclusive) of the fraction part of the significand the stringisSignificandNegative- whether the significand value is negativesignificand- the significand of the float value (can be truncated)exponent- the exponent of the float value considering the significandisSignificandTruncated- whether the significand is truncatedexponentOfTruncatedSignificand- the exponent value of the truncated significandexponentValue- the exponent of the float value without considering the significandstartIndex- the start index of the literal in strendIndex- the end index of the literal in str- Returns:
- the bit pattern of the parsed value, if the input is legal;
otherwise,
-1L.
-
-