9 #ifndef LLDB_API_SBCOMMANDRETURNOBJECT_H
10 #define LLDB_API_SBCOMMANDRETURNOBJECT_H
19 class SBCommandReturnObjectImpl;
39 explicit operator bool()
const;
43 const char *GetOutput();
45 const char *GetError();
47 size_t PutOutput(FILE *fh);
49 size_t PutOutput(
SBFile file);
51 size_t PutOutput(FileSP file);
53 size_t GetOutputSize();
55 size_t GetErrorSize();
57 size_t PutError(FILE *fh);
59 size_t PutError(
SBFile file);
61 size_t PutError(FileSP file);
73 void AppendMessage(
const char *
message);
75 void AppendWarning(
const char *
message);
79 void SetImmediateOutputFile(FILE *fh);
81 void SetImmediateErrorFile(FILE *fh);
83 void SetImmediateOutputFile(FILE *fh,
bool transfer_ownership);
85 void SetImmediateErrorFile(FILE *fh,
bool transfer_ownership);
87 void SetImmediateOutputFile(
SBFile file);
89 void SetImmediateErrorFile(
SBFile file);
91 void SetImmediateOutputFile(FileSP file);
93 void SetImmediateErrorFile(FileSP file);
95 void PutCString(
const char *
string,
int len = -1);
97 size_t Printf(
const char *format, ...)
__attribute__((format(printf, 2, 3)));
99 const char *GetOutput(
bool only_if_no_immediate);
101 const char *GetError(
bool only_if_no_immediate);
104 const char *fallback_error_cstr =
nullptr);
106 void SetError(
const char *error_cstr);
110 friend class SBOptions;
121 std::unique_ptr<lldb_private::SBCommandReturnObjectImpl>
m_opaque_up;
126 #endif // LLDB_API_SBCOMMANDRETURNOBJECT_H