JCExpression transformClassParameterType(Parameter parameter){
  FunctionOrValue decl=parameter.getModel();
  if (!(decl.getContainer() instanceof Class)) {
    throw new BugException("expected parameter of Class");
  }
  JCExpression type;
  FunctionOrValue attr=decl;
  if (!Decl.isTransient(attr)) {
    TypedReference typedRef=getTypedReference(attr);
    TypedReference nonWideningTypedRef=nonWideningTypeDecl(typedRef);
    Type paramType=nonWideningType(typedRef,nonWideningTypedRef);
    type=makeJavaType(nonWideningTypedRef.getDeclaration(),paramType,0);
  }
 else {
    Type paramType=decl.getType();
    type=makeJavaType(decl,paramType,0);
  }
  return type;
}

JCExpression transformClassParameterType ( Parameter parameter ) { FunctionOrValue decl = parameter . getModel ( ) ; if ( ! ( decl . getContainer ( ) instanceof Class ) ) { throw new BugException ( "expected parameter of Class" ) ; } JCExpression type ; FunctionOrValue attr = decl ; if ( ! Decl . isTransient ( attr ) ) { TypedReference typedRef = getTypedReference ( attr ) ; TypedReference nonWideningTypedRef = nonWideningTypeDecl ( typedRef ) ; Type paramType = nonWideningType ( typedRef , nonWideningTypedRef ) ; type = makeJavaType ( nonWideningTypedRef . getDeclaration ( ) , paramType , 0 ) ; } else { Type paramType = decl . getType ( ) ; type = makeJavaType ( decl , paramType , 0 ) ; } return type ; }
transforms the type of the given class parameter
