public T type(GenericType type) {
   parameter.type = type.getRawType();
   parameter.genericType = type.getType();
   return (T) this;
 }
 public T genericType(Type type) {
   parameter.genericType = type;
   return (T) this;
 }