code: public EnumT[] values() {
      Collection<EnumT> valueCollection = knownValues.values();
  
      @SuppressWarnings("unchecked")
      final EnumT[] valueArray = (EnumT[]) Array.newInstance(clazz, valueCollection.size());
      int i = 0;
      for (EnumT enumV : valueCollection) {
        valueArray[i] = enumV;
        i++;
      }
  
      return valueArray;
    }
docs: Return the known values of this enum type.