code: @Pure
  	@SuppressWarnings({"checkstyle:returncount", "checkstyle:npathcomplexity"})
  	public static Class<?> forName(String name) throws ClassNotFoundException {
  		if (name == null || "".equals(name) || "null".equals(name) //$NON-NLS-1$ //$NON-NLS-2$
  				|| "void".equals(name)) { //$NON-NLS-1$
  			return void.class;
  		}
  		if ("boolean".equals(name)) { //$NON-NLS-1$
  			return boolean.class;
  		}
  		if ("byte".equals(name)) { //$NON-NLS-1$
  			return byte.class;
  		}
  		if ("char".equals(name)) { //$NON-NLS-1$
  			return char.class;
  		}
  		if ("double".equals(name)) { //$NON-NLS-1$
  			return double.class;
  		}
  		if ("float".equals(name)) { //$NON-NLS-1$
  			return float.class;
  		}
  		if ("int".equals(name)) { //$NON-NLS-1$
  			return int.class;
  		}
  		if ("long".equals(name)) { //$NON-NLS-1$
  			return long.class;
  		}
  		if ("short".equals(name)) { //$NON-NLS-1$
  			return short.class;
  		}
  		return Class.forName(name);
  	}
docs: Replies the type that corresponds to the specified class.
  If the name corresponds to a primitive type, the low-level type
  will be replied.
  This method extends
  {@link Class#forName(String)} with autoboxing support.
  
  @param name is the name of the class to load.
  @return the loaded class
  @throws ClassNotFoundException  if name names an
  unknown class or primitive