10 #ifndef LLDB_SBCommandReturnObject_h_ 
   11 #define LLDB_SBCommandReturnObject_h_ 
   38   lldb_private::CommandReturnObject *Release();
 
   42   const char *GetOutput();
 
   44   const char *GetError();
 
   46   size_t PutOutput(FILE *fh);
 
   48   size_t GetOutputSize();
 
   50   size_t GetErrorSize();
 
   52   size_t PutError(FILE *fh);
 
   56   lldb::ReturnStatus GetStatus();
 
   58   void SetStatus(lldb::ReturnStatus status);
 
   64   void AppendMessage(
const char *message);
 
   66   void AppendWarning(
const char *message);
 
   72   void SetImmediateOutputFile(FILE *fh);
 
   74   void SetImmediateErrorFile(FILE *fh);
 
   76   void SetImmediateOutputFile(FILE *fh, 
bool transfer_ownership);
 
   78   void SetImmediateErrorFile(FILE *fh, 
bool transfer_ownership);
 
   80   void PutCString(
const char *
string, 
int len = -1);
 
   82   size_t Printf(
const char *format, ...) __attribute__((format(printf, 2, 3)));
 
   84   const char *GetOutput(
bool only_if_no_immediate);
 
   86   const char *GetError(
bool only_if_no_immediate);
 
   89                 const char *fallback_error_cstr = 
nullptr);
 
   91   void SetError(
const char *error_cstr);
 
   95   friend class SBOptions;
 
   97   lldb_private::CommandReturnObject *operator->() 
const;
 
   99   lldb_private::CommandReturnObject *
get() 
const;
 
  101   lldb_private::CommandReturnObject &operator*() 
const;
 
  103   lldb_private::CommandReturnObject &ref() 
const;
 
  105   void SetLLDBObjectPtr(lldb_private::CommandReturnObject *ptr);
 
  108   std::unique_ptr<lldb_private::CommandReturnObject> m_opaque_ap;
 
  113 #endif // LLDB_SBCommandReturnObject_h_ 
class LLDB_API SBCommandReturnObject