Package org.codehaus.groovy.syntax
Class Numbers
java.lang.Object
org.codehaus.groovy.syntax.Numbers
Helper class for processing Groovy numeric literals.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic boolean
isDigit
(char c) Returns true if the specified character is a base-10 digit.static boolean
isHexDigit
(char c) Returns true if the specified character is a base-16 digit.static boolean
isNumericTypeSpecifier
(char c, boolean isDecimal) Returns true if the specified character is a valid type specifier for a numeric value.static boolean
isOctalDigit
(char c) Returns true if the specific character is a base-8 digit.static Number
parseDecimal
(String text) Builds a Number from the given decimal descriptor.static Number
parseInteger
(String text) Builds a Number from the given integer descriptor.
-
Constructor Details
-
Numbers
public Numbers()
-
-
Method Details
-
isDigit
public static boolean isDigit(char c) Returns true if the specified character is a base-10 digit. -
isOctalDigit
public static boolean isOctalDigit(char c) Returns true if the specific character is a base-8 digit. -
isHexDigit
public static boolean isHexDigit(char c) Returns true if the specified character is a base-16 digit. -
isNumericTypeSpecifier
public static boolean isNumericTypeSpecifier(char c, boolean isDecimal) Returns true if the specified character is a valid type specifier for a numeric value. -
parseInteger
Builds a Number from the given integer descriptor. Creates the narrowest type possible, or a specific type, if specified.- Parameters:
text
- literal text to parse- Returns:
- instantiated Number object
- Throws:
NumberFormatException
- if the number does not fit within the type requested by the type specifier suffix (invalid numbers don't make it here)
-
parseDecimal
Builds a Number from the given decimal descriptor. Uses BigDecimal, unless, Double or Float is requested.- Parameters:
text
- literal text to parse- Returns:
- instantiated Number object
- Throws:
NumberFormatException
- if the number does not fit within the type requested by the type specifier suffix (invalid numbers don't make it here)
-