com.alibaba.fastjson.asm
Class Type

java.lang.Object
  extended by com.alibaba.fastjson.asm.Type

public class Type
extends Object

A Java type. This class can be used to make it easier to manipulate type and method descriptors.

Author:
Eric Bruneton, Chris Nokleberg

Field Summary
static int ARRAY
          The sort of array reference types.
static int BOOLEAN
          The sort of the boolean type.
static Type BOOLEAN_TYPE
          The boolean type.
static int BYTE
          The sort of the byte type.
static Type BYTE_TYPE
          The byte type.
static int CHAR
          The sort of the char type.
static Type CHAR_TYPE
          The char type.
static int DOUBLE
          The sort of the double type.
static Type DOUBLE_TYPE
          The double type.
static int FLOAT
          The sort of the float type.
static Type FLOAT_TYPE
          The float type.
static int INT
          The sort of the int type.
static Type INT_TYPE
          The int type.
static int LONG
          The sort of the long type.
static Type LONG_TYPE
          The long type.
static int OBJECT
          The sort of object reference type.
static int SHORT
          The sort of the short type.
static Type SHORT_TYPE
          The short type.
static int VOID
          The sort of the void type.
static Type VOID_TYPE
          The void type.
 
Method Summary
static int getArgumentsAndReturnSizes(String desc)
          Computes the size of the arguments and of the return value of a method.
 String getDescriptor()
          Returns the descriptor corresponding to this Java type.
 String getInternalName()
          Returns the internal name of the class corresponding to this object or array type.
 int getSort()
          Returns the sort of this Java type.
static Type getType(String typeDescriptor)
          Returns the Java type corresponding to the given type descriptor.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

VOID

public static final int VOID
The sort of the void type. See getSort.

See Also:
Constant Field Values

BOOLEAN

public static final int BOOLEAN
The sort of the boolean type. See getSort.

See Also:
Constant Field Values

CHAR

public static final int CHAR
The sort of the char type. See getSort.

See Also:
Constant Field Values

BYTE

public static final int BYTE
The sort of the byte type. See getSort.

See Also:
Constant Field Values

SHORT

public static final int SHORT
The sort of the short type. See getSort.

See Also:
Constant Field Values

INT

public static final int INT
The sort of the int type. See getSort.

See Also:
Constant Field Values

FLOAT

public static final int FLOAT
The sort of the float type. See getSort.

See Also:
Constant Field Values

LONG

public static final int LONG
The sort of the long type. See getSort.

See Also:
Constant Field Values

DOUBLE

public static final int DOUBLE
The sort of the double type. See getSort.

See Also:
Constant Field Values

ARRAY

public static final int ARRAY
The sort of array reference types. See getSort.

See Also:
Constant Field Values

OBJECT

public static final int OBJECT
The sort of object reference type. See getSort.

See Also:
Constant Field Values

VOID_TYPE

public static final Type VOID_TYPE
The void type.


BOOLEAN_TYPE

public static final Type BOOLEAN_TYPE
The boolean type.


CHAR_TYPE

public static final Type CHAR_TYPE
The char type.


BYTE_TYPE

public static final Type BYTE_TYPE
The byte type.


SHORT_TYPE

public static final Type SHORT_TYPE
The short type.


INT_TYPE

public static final Type INT_TYPE
The int type.


FLOAT_TYPE

public static final Type FLOAT_TYPE
The float type.


LONG_TYPE

public static final Type LONG_TYPE
The long type.


DOUBLE_TYPE

public static final Type DOUBLE_TYPE
The double type.

Method Detail

getType

public static Type getType(String typeDescriptor)
Returns the Java type corresponding to the given type descriptor.

Parameters:
typeDescriptor - a type descriptor.
Returns:
the Java type corresponding to the given type descriptor.

getArgumentsAndReturnSizes

public static int getArgumentsAndReturnSizes(String desc)
Computes the size of the arguments and of the return value of a method.

Parameters:
desc - the descriptor of a method.
Returns:
the size of the arguments of the method (plus one for the implicit this argument), argSize, and the size of its return value, retSize, packed into a single int i = (argSize << 2) | retSize (argSize is therefore equal to i >> 2, and retSize to i & 0x03).

getSort

public int getSort()
Returns the sort of this Java type.

Returns:
VOID, BOOLEAN, CHAR, BYTE, SHORT, INT, FLOAT, LONG, DOUBLE, ARRAY or OBJECT.

getInternalName

public String getInternalName()
Returns the internal name of the class corresponding to this object or array type. The internal name of a class is its fully qualified name (as returned by Class.getName(), where '.' are replaced by '/'. This method should only be used for an object or array type.

Returns:
the internal name of the class corresponding to this object type.

getDescriptor

public String getDescriptor()
Returns the descriptor corresponding to this Java type.

Returns:
the descriptor corresponding to this Java type.


Copyright © 2012 Alibaba Group. All Rights Reserved.