org.parboiled.common
Class Utils

java.lang.Object
  extended by org.parboiled.common.Utils

public final class Utils
extends java.lang.Object

General utility methods.


Field Summary
static java.lang.Boolean[] EMPTY_BOOLEAN_OBJECT_ARRAY
           
static java.lang.Byte[] EMPTY_BYTE_OBJECT_ARRAY
           
static java.lang.Character[] EMPTY_CHARACTER_OBJECT_ARRAY
           
static java.lang.Double[] EMPTY_DOUBLE_OBJECT_ARRAY
           
static java.lang.Float[] EMPTY_FLOAT_OBJECT_ARRAY
           
static java.lang.Integer[] EMPTY_INTEGER_OBJECT_ARRAY
           
static java.lang.Long[] EMPTY_LONG_OBJECT_ARRAY
           
static java.lang.Short[] EMPTY_SHORT_OBJECT_ARRAY
           
 
Method Summary
static
<T> T[]
arrayOf(T[] firstElements, T lastElement)
          Joins the given arguments into one array.
static
<T> T[]
arrayOf(T firstElement, T... moreElements)
          Joins the given arguments into one array.
static
<T> T[]
arrayOf(T firstElement, T secondElement, T... moreElements)
          Joins the given arguments into one array.
static
<T> boolean
equal(T a, T b)
          Null enabled equals().
static java.lang.reflect.Constructor findConstructor(java.lang.Class<?> type, java.lang.Object[] args)
          Finds the constructor of the given class that is compatible with the given arguments.
static java.lang.Class<?> getClass(java.lang.reflect.Type type)
          Get the underlying class for a type, or null if the type is a variable type.
static java.util.List<java.lang.Class<?>> getTypeArguments(java.lang.Class<?> base, java.lang.Class<?> implementation)
          Gets the actual type arguments that are used in a given implementation of a given generic base class or interface.
static java.lang.String humanize(long value)
          Formats the given long value into a human readable notation using the Kilo, Mega, Giga, etc.
static java.lang.Boolean[] toObjectArray(boolean[] array)
           
static java.lang.Byte[] toObjectArray(byte[] array)
           
static java.lang.Character[] toObjectArray(char[] array)
           
static java.lang.Double[] toObjectArray(double[] array)
           
static java.lang.Float[] toObjectArray(float[] array)
           
static java.lang.Integer[] toObjectArray(int[] array)
           
static java.lang.Long[] toObjectArray(long[] array)
           
static java.lang.Short[] toObjectArray(short[] array)
           
static java.lang.String toString(java.lang.Object obj)
          Null enabled toString().
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

EMPTY_CHARACTER_OBJECT_ARRAY

public static final java.lang.Character[] EMPTY_CHARACTER_OBJECT_ARRAY

EMPTY_INTEGER_OBJECT_ARRAY

public static final java.lang.Integer[] EMPTY_INTEGER_OBJECT_ARRAY

EMPTY_LONG_OBJECT_ARRAY

public static final java.lang.Long[] EMPTY_LONG_OBJECT_ARRAY

EMPTY_SHORT_OBJECT_ARRAY

public static final java.lang.Short[] EMPTY_SHORT_OBJECT_ARRAY

EMPTY_BYTE_OBJECT_ARRAY

public static final java.lang.Byte[] EMPTY_BYTE_OBJECT_ARRAY

EMPTY_FLOAT_OBJECT_ARRAY

public static final java.lang.Float[] EMPTY_FLOAT_OBJECT_ARRAY

EMPTY_DOUBLE_OBJECT_ARRAY

public static final java.lang.Double[] EMPTY_DOUBLE_OBJECT_ARRAY

EMPTY_BOOLEAN_OBJECT_ARRAY

public static final java.lang.Boolean[] EMPTY_BOOLEAN_OBJECT_ARRAY
Method Detail

toObjectArray

public static java.lang.Character[] toObjectArray(char[] array)

toObjectArray

public static java.lang.Integer[] toObjectArray(int[] array)

toObjectArray

public static java.lang.Long[] toObjectArray(long[] array)

toObjectArray

public static java.lang.Short[] toObjectArray(short[] array)

toObjectArray

public static java.lang.Byte[] toObjectArray(byte[] array)

toObjectArray

public static java.lang.Float[] toObjectArray(float[] array)

toObjectArray

public static java.lang.Double[] toObjectArray(double[] array)

toObjectArray

public static java.lang.Boolean[] toObjectArray(boolean[] array)

arrayOf

public static <T> T[] arrayOf(T firstElement,
                              T... moreElements)
Joins the given arguments into one array.

Parameters:
firstElement - the first element
moreElements - more elements (optional)
Returns:
a new array containing all arguments.

arrayOf

public static <T> T[] arrayOf(T firstElement,
                              T secondElement,
                              T... moreElements)
Joins the given arguments into one array.

Parameters:
firstElement - the first element
secondElement - the second element
moreElements - more elements (optional)
Returns:
a new array containing all arguments.

arrayOf

public static <T> T[] arrayOf(T[] firstElements,
                              T lastElement)
Joins the given arguments into one array.

Parameters:
firstElements - the first elements
lastElement - the element to append
Returns:
a new array containing all arguments.

toString

public static java.lang.String toString(java.lang.Object obj)
Null enabled toString().

Parameters:
obj - the object
Returns:
the empty string of obj is null, otherwise obj.toString()

equal

public static <T> boolean equal(T a,
                                T b)
Null enabled equals().

Parameters:
a - the first object
b - the second object
Returns:
true if both are null or both are equal

getTypeArguments

public static java.util.List<java.lang.Class<?>> getTypeArguments(java.lang.Class<?> base,
                                                                  java.lang.Class<?> implementation)
Gets the actual type arguments that are used in a given implementation of a given generic base class or interface. (Based on code copyright 2007 by Ian Robertson).

Parameters:
base - the generic base class or interface
implementation - the type (potentially) implementing the given base class or interface
Returns:
a list of the raw classes for the actual type arguments.

getClass

public static java.lang.Class<?> getClass(java.lang.reflect.Type type)
Get the underlying class for a type, or null if the type is a variable type. (Copyright 2007 by Ian Robertson).

Parameters:
type - the type
Returns:
the underlying class

findConstructor

public static java.lang.reflect.Constructor findConstructor(java.lang.Class<?> type,
                                                            java.lang.Object[] args)
Finds the constructor of the given class that is compatible with the given arguments.

Parameters:
type - the class to find the constructor of
args - the arguments
Returns:
the constructor

humanize

public static java.lang.String humanize(long value)
Formats the given long value into a human readable notation using the Kilo, Mega, Giga, etc. abbreviations.

Parameters:
value - the value to format
Returns:
the string representation