code: public static Field[] jlClassGetFields(Class<?> clazz) {
  		ReloadableType rtype = getRType(clazz);
  		if (rtype == null) {
  			return clazz.getFields();
  		}
  		else {
  			List<Field> allFields = new ArrayList<Field>();
  			gatherFields(clazz, allFields, new HashSet<Class<?>>());
  			return allFields.toArray(new Field[allFields.size()]);
  		}
  	}
docs: Although fields are not reloadable, we have to intercept this because otherwise we'll return the r$type field as
  a result here.
  
  @param clazz the class for which to retrieve the fields
  @return array of fields in the class