Package org.codehaus.groovy.syntax

# Class Numbers

java.lang.Object
org.codehaus.groovy.syntax.Numbers

public class Numbers extends Object
Helper class for processing Groovy numeric literals.

Author:
  Brian Larson, Chris Poirier

## Constructor Summary

Constructors
Constructor
Description
`Numbers()`

## Method Summary

Modifier and Type
Method
Description
`static 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.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## 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

public static Number parseInteger(String text)
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

public static Number parseDecimal(String text)
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)