code: private static JSONArray _fromArray( Enum e, JsonConfig jsonConfig ) {
        if( !addInstance( e ) ){
           try{
              return jsonConfig.getCycleDetectionStrategy()
                    .handleRepeatedReferenceAsArray( e );
           }catch( JSONException jsone ){
              removeInstance( e );
              fireErrorEvent( jsone, jsonConfig );
              throw jsone;
           }catch( RuntimeException re ){
              removeInstance( e );
              JSONException jsone = new JSONException( re );
              fireErrorEvent( jsone, jsonConfig );
              throw jsone;
           }
        }
        fireArrayStartEvent( jsonConfig );
        JSONArray jsonArray = new JSONArray();
        if( e != null ){
           jsonArray.addValue( e, jsonConfig );
           fireElementAddedEvent( 0, jsonArray.get( 0 ), jsonConfig );
        }else{
           JSONException jsone = new JSONException( "enum value is null" );
           removeInstance( e );
           fireErrorEvent( jsone, jsonConfig );
           throw jsone;
        }
  
        removeInstance( e );
        fireArrayEndEvent( jsonConfig );
        return jsonArray;
     }
docs: Construct a JSONArray from an Enum value.
  
  @param e A enum value.
  @throws JSONException If there is a syntax error.