org.curjent.impl.agent
Class ParamInfo

java.lang.Object
  extended by org.curjent.impl.agent.ParamInfo

final class ParamInfo
extends Object

Information for bytecode generation of method parameters. A message class is generated for each method, and a field for each parameter is generated for the message. This class contains bytecode information for transferring arguments to and from the message.

See Also:
ResultInfo, MethodInfo, TypeInfo

Field Summary
(package private)  BoxedInfo boxed
          Primitive value boxing and unboxing information for the message field's type.
(package private)  String descriptor
          Parameter type descriptor.
(package private)  String internal
          Parameter type internal name.
(package private)  String name
          Message field name.
(package private)  int size
          Argument stack size.
(package private)  Class<?> type
          Parameter type.
 
Constructor Summary
ParamInfo(Class<?> type, int index)
          Extracts and saves information for a parameter.
 
Method Summary
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

type

Class<?> type
Parameter type. For example, Boolean.TYPE for a boolean parameter, and String.class for a String parameter.


internal

String internal
Parameter type internal name. The JVM internal name for the parameter's type, such as "java/lang/String" for String.


descriptor

String descriptor
Parameter type descriptor. The JVM descriptor for the parameter's type, such as "Ljava/lang/String;" for String.


name

String name
Message field name. A synthetic name unrelated to the parameter name.


size

int size
Argument stack size. Either 2 for long and double parameters, or 1 for all others.


boxed

BoxedInfo boxed
Primitive value boxing and unboxing information for the message field's type. null for non-primitive types.

Constructor Detail

ParamInfo

ParamInfo(Class<?> type,
          int index)
Extracts and saves information for a parameter.

Parameters:
type - The parameter's type.
index - The method index of the parameter. The method's first parameter is at index 0. Its last parameter is at index length - 1, where length is the number of parameters.


Copyright 2009-2011 Tom Landon
Apache License 2.0