public void describeObject(OutputStream stream, Keyword mode) {
    { Stella_Class self = this;

      if (mode == Stella.KWD_SOURCE) {
        Cons.prettyPrintDefinitionTree(((Cons)(Stella.readSExpressionFromString(self.classStringifiedSource))), stream);
      }
      else if (mode == Stella.KWD_TERSE) {
        Stella_Object.describeTersely(self, stream);
      }
      else if (mode == Stella.KWD_VERBOSE) {
        stream.nativeStream.println("SOURCE mode:");
        self.describeObject(stream, Stella.KWD_SOURCE);
      }
      else {
        { OutputStringStream stream000 = OutputStringStream.newOutputStringStream();

          stream000.nativeStream.print("`" + mode + "' is not a valid case option");
          throw ((StellaException)(StellaException.newStellaException(stream000.theStringReader()).fillInStackTrace()));
        }
      }
    }
  }