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.

Version:
  $Id: Numbers.java 11949 2008-04-22 09:19:18Z paulk $
Author:
  Brian Larson, Chris Poirier

### Constructor Summary

Constructors
Constructor and Description
`Numbers()`

### Method Summary

Methods
`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 Detail

#### Numbers

    public Numbers()

### Method Detail

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