diff options
168 files changed, 551 insertions, 18 deletions
diff --git a/lldb/include/lldb/API/SBAddress.h b/lldb/include/lldb/API/SBAddress.h index 26bbe038427..2cebec22b47 100644 --- a/lldb/include/lldb/API/SBAddress.h +++ b/lldb/include/lldb/API/SBAddress.h @@ -29,6 +29,8 @@ public: const lldb::SBAddress &operator=(const lldb::SBAddress &rhs); + explicit operator bool() const; + bool IsValid() const; void Clear(); diff --git a/lldb/include/lldb/API/SBBlock.h b/lldb/include/lldb/API/SBBlock.h index 0acd8156af3..14500217f58 100644 --- a/lldb/include/lldb/API/SBBlock.h +++ b/lldb/include/lldb/API/SBBlock.h @@ -28,6 +28,8 @@ public: bool IsInlined() const; + explicit operator bool() const; + bool IsValid() const; const char *GetInlinedName() const; diff --git a/lldb/include/lldb/API/SBBreakpoint.h b/lldb/include/lldb/API/SBBreakpoint.h index 6acfe5aa1ec..75c0e69a482 100644 --- a/lldb/include/lldb/API/SBBreakpoint.h +++ b/lldb/include/lldb/API/SBBreakpoint.h @@ -36,6 +36,8 @@ public: break_id_t GetID() const; + explicit operator bool() const; + bool IsValid() const; void ClearAllBreakpointSites(); diff --git a/lldb/include/lldb/API/SBBreakpointLocation.h b/lldb/include/lldb/API/SBBreakpointLocation.h index 8552e4d4dad..085bed9399b 100644 --- a/lldb/include/lldb/API/SBBreakpointLocation.h +++ b/lldb/include/lldb/API/SBBreakpointLocation.h @@ -27,6 +27,8 @@ public: break_id_t GetID(); + explicit operator bool() const; + bool IsValid() const; lldb::SBAddress GetAddress(); diff --git a/lldb/include/lldb/API/SBBreakpointName.h b/lldb/include/lldb/API/SBBreakpointName.h index 19e1608adc8..018238bcd07 100644 --- a/lldb/include/lldb/API/SBBreakpointName.h +++ b/lldb/include/lldb/API/SBBreakpointName.h @@ -39,6 +39,8 @@ public: bool operator!=(const lldb::SBBreakpointName &rhs); + explicit operator bool() const; + bool IsValid() const; const char *GetName() const; diff --git a/lldb/include/lldb/API/SBBroadcaster.h b/lldb/include/lldb/API/SBBroadcaster.h index 4a5d972003a..fc5e8880e9f 100644 --- a/lldb/include/lldb/API/SBBroadcaster.h +++ b/lldb/include/lldb/API/SBBroadcaster.h @@ -25,6 +25,8 @@ public: ~SBBroadcaster(); + explicit operator bool() const; + bool IsValid() const; void Clear(); diff --git a/lldb/include/lldb/API/SBCommandInterpreter.h b/lldb/include/lldb/API/SBCommandInterpreter.h index 36c50f48b0a..abd2fcb75ca 100644 --- a/lldb/include/lldb/API/SBCommandInterpreter.h +++ b/lldb/include/lldb/API/SBCommandInterpreter.h @@ -87,6 +87,8 @@ public: static bool EventIsCommandInterpreterEvent(const lldb::SBEvent &event); + explicit operator bool() const; + bool IsValid() const; bool CommandExists(const char *cmd); @@ -272,6 +274,8 @@ class SBCommand { public: SBCommand(); + explicit operator bool() const; + bool IsValid(); const char *GetName(); diff --git a/lldb/include/lldb/API/SBCommandReturnObject.h b/lldb/include/lldb/API/SBCommandReturnObject.h index ac24c2e882a..2877afb9b8b 100644 --- a/lldb/include/lldb/API/SBCommandReturnObject.h +++ b/lldb/include/lldb/API/SBCommandReturnObject.h @@ -32,6 +32,8 @@ public: lldb_private::CommandReturnObject *Release(); + explicit operator bool() const; + bool IsValid() const; const char *GetOutput(); diff --git a/lldb/include/lldb/API/SBCommunication.h b/lldb/include/lldb/API/SBCommunication.h index 53323f31448..5b803fc6017 100644 --- a/lldb/include/lldb/API/SBCommunication.h +++ b/lldb/include/lldb/API/SBCommunication.h @@ -37,6 +37,8 @@ public: SBCommunication(const char *broadcaster_name); ~SBCommunication(); + explicit operator bool() const; + bool IsValid() const; lldb::SBBroadcaster GetBroadcaster(); diff --git a/lldb/include/lldb/API/SBCompileUnit.h b/lldb/include/lldb/API/SBCompileUnit.h index 5ebea948859..2cf713384fb 100644 --- a/lldb/include/lldb/API/SBCompileUnit.h +++ b/lldb/include/lldb/API/SBCompileUnit.h @@ -24,6 +24,8 @@ public: const lldb::SBCompileUnit &operator=(const lldb::SBCompileUnit &rhs); + explicit operator bool() const; + bool IsValid() const; lldb::SBFileSpec GetFileSpec() const; diff --git a/lldb/include/lldb/API/SBData.h b/lldb/include/lldb/API/SBData.h index f07912d1a66..886fe829a46 100644 --- a/lldb/include/lldb/API/SBData.h +++ b/lldb/include/lldb/API/SBData.h @@ -29,6 +29,8 @@ public: void Clear(); + explicit operator bool() const; + bool IsValid(); size_t GetByteSize(); diff --git a/lldb/include/lldb/API/SBDebugger.h b/lldb/include/lldb/API/SBDebugger.h index 2628d449613..7b684561cce 100644 --- a/lldb/include/lldb/API/SBDebugger.h +++ b/lldb/include/lldb/API/SBDebugger.h @@ -62,6 +62,8 @@ public: static void MemoryPressureDetected(); + explicit operator bool() const; + bool IsValid() const; void Clear(); diff --git a/lldb/include/lldb/API/SBDeclaration.h b/lldb/include/lldb/API/SBDeclaration.h index 56e1570b0e2..d2b423e40fe 100644 --- a/lldb/include/lldb/API/SBDeclaration.h +++ b/lldb/include/lldb/API/SBDeclaration.h @@ -25,6 +25,8 @@ public: const lldb::SBDeclaration &operator=(const lldb::SBDeclaration &rhs); + explicit operator bool() const; + bool IsValid() const; lldb::SBFileSpec GetFileSpec() const; diff --git a/lldb/include/lldb/API/SBError.h b/lldb/include/lldb/API/SBError.h index bcfa9acf55c..b076f87b766 100644 --- a/lldb/include/lldb/API/SBError.h +++ b/lldb/include/lldb/API/SBError.h @@ -46,6 +46,8 @@ public: int SetErrorStringWithFormat(const char *format, ...) __attribute__((format(printf, 2, 3))); + explicit operator bool() const; + bool IsValid() const; bool GetDescription(lldb::SBStream &description); diff --git a/lldb/include/lldb/API/SBEvent.h b/lldb/include/lldb/API/SBEvent.h index d8a347bd7e8..d297cbeff67 100644 --- a/lldb/include/lldb/API/SBEvent.h +++ b/lldb/include/lldb/API/SBEvent.h @@ -35,6 +35,8 @@ public: const SBEvent &operator=(const lldb::SBEvent &rhs); + explicit operator bool() const; + bool IsValid() const; const char *GetDataFlavor(); diff --git a/lldb/include/lldb/API/SBFileSpec.h b/lldb/include/lldb/API/SBFileSpec.h index 3e81d592044..7f819b2f75b 100644 --- a/lldb/include/lldb/API/SBFileSpec.h +++ b/lldb/include/lldb/API/SBFileSpec.h @@ -28,6 +28,8 @@ public: const SBFileSpec &operator=(const lldb::SBFileSpec &rhs); + explicit operator bool() const; + bool IsValid() const; bool Exists() const; diff --git a/lldb/include/lldb/API/SBFrame.h b/lldb/include/lldb/API/SBFrame.h index 496a1aac170..b213f898551 100644 --- a/lldb/include/lldb/API/SBFrame.h +++ b/lldb/include/lldb/API/SBFrame.h @@ -26,6 +26,8 @@ public: bool IsEqual(const lldb::SBFrame &that) const; + explicit operator bool() const; + bool IsValid() const; uint32_t GetFrameID() const; diff --git a/lldb/include/lldb/API/SBFunction.h b/lldb/include/lldb/API/SBFunction.h index 19dd0b32f28..43f01d7e57d 100644 --- a/lldb/include/lldb/API/SBFunction.h +++ b/lldb/include/lldb/API/SBFunction.h @@ -25,6 +25,8 @@ public: ~SBFunction(); + explicit operator bool() const; + bool IsValid() const; const char *GetName() const; diff --git a/lldb/include/lldb/API/SBInstruction.h b/lldb/include/lldb/API/SBInstruction.h index ca40cf493ea..0bb58779560 100644 --- a/lldb/include/lldb/API/SBInstruction.h +++ b/lldb/include/lldb/API/SBInstruction.h @@ -31,6 +31,8 @@ public: ~SBInstruction(); + explicit operator bool() const; + bool IsValid(); SBAddress GetAddress(); diff --git a/lldb/include/lldb/API/SBInstructionList.h b/lldb/include/lldb/API/SBInstructionList.h index e47bd923b6c..308fc96a896 100644 --- a/lldb/include/lldb/API/SBInstructionList.h +++ b/lldb/include/lldb/API/SBInstructionList.h @@ -25,6 +25,8 @@ public: ~SBInstructionList(); + explicit operator bool() const; + bool IsValid() const; size_t GetSize(); diff --git a/lldb/include/lldb/API/SBLineEntry.h b/lldb/include/lldb/API/SBLineEntry.h index 11001aa13f6..855c28d14b8 100644 --- a/lldb/include/lldb/API/SBLineEntry.h +++ b/lldb/include/lldb/API/SBLineEntry.h @@ -29,6 +29,8 @@ public: lldb::SBAddress GetEndAddress() const; + explicit operator bool() const; + bool IsValid() const; lldb::SBFileSpec GetFileSpec() const; diff --git a/lldb/include/lldb/API/SBListener.h b/lldb/include/lldb/API/SBListener.h index 9aaca8f0541..21aface97bd 100644 --- a/lldb/include/lldb/API/SBListener.h +++ b/lldb/include/lldb/API/SBListener.h @@ -29,6 +29,8 @@ public: void Clear(); + explicit operator bool() const; + bool IsValid() const; uint32_t StartListeningForEventClass(SBDebugger &debugger, diff --git a/lldb/include/lldb/API/SBModule.h b/lldb/include/lldb/API/SBModule.h index 9337d298a8a..37f5e492d12 100644 --- a/lldb/include/lldb/API/SBModule.h +++ b/lldb/include/lldb/API/SBModule.h @@ -31,6 +31,8 @@ public: ~SBModule(); + explicit operator bool() const; + bool IsValid() const; void Clear(); diff --git a/lldb/include/lldb/API/SBModuleSpec.h b/lldb/include/lldb/API/SBModuleSpec.h index e462bd98837..7b4fc5671a2 100644 --- a/lldb/include/lldb/API/SBModuleSpec.h +++ b/lldb/include/lldb/API/SBModuleSpec.h @@ -24,6 +24,8 @@ public: const SBModuleSpec &operator=(const SBModuleSpec &rhs); + explicit operator bool() const; + bool IsValid() const; void Clear(); diff --git a/lldb/include/lldb/API/SBPlatform.h b/lldb/include/lldb/API/SBPlatform.h index d0dc457d6da..f83d3f44a9f 100644 --- a/lldb/include/lldb/API/SBPlatform.h +++ b/lldb/include/lldb/API/SBPlatform.h @@ -91,6 +91,8 @@ public: ~SBPlatform(); + explicit operator bool() const; + bool IsValid() const; void Clear(); diff --git a/lldb/include/lldb/API/SBProcess.h b/lldb/include/lldb/API/SBProcess.h index 81897d57aa3..d6811e331f1 100644 --- a/lldb/include/lldb/API/SBProcess.h +++ b/lldb/include/lldb/API/SBProcess.h @@ -51,6 +51,8 @@ public: void Clear(); + explicit operator bool() const; + bool IsValid() const; lldb::SBTarget GetTarget() const; diff --git a/lldb/include/lldb/API/SBProcessInfo.h b/lldb/include/lldb/API/SBProcessInfo.h index 8e67dd11aa8..86dba9a8e11 100644 --- a/lldb/include/lldb/API/SBProcessInfo.h +++ b/lldb/include/lldb/API/SBProcessInfo.h @@ -22,6 +22,8 @@ public: SBProcessInfo &operator=(const SBProcessInfo &rhs); + explicit operator bool() const; + bool IsValid() const; const char *GetName(); diff --git a/lldb/include/lldb/API/SBQueue.h b/lldb/include/lldb/API/SBQueue.h index 8b7570e02b3..0124c1c90dd 100644 --- a/lldb/include/lldb/API/SBQueue.h +++ b/lldb/include/lldb/API/SBQueue.h @@ -28,6 +28,8 @@ public: ~SBQueue(); + explicit operator bool() const; + bool IsValid() const; void Clear(); diff --git a/lldb/include/lldb/API/SBQueueItem.h b/lldb/include/lldb/API/SBQueueItem.h index 4f1dd6af7f2..455a1f98379 100644 --- a/lldb/include/lldb/API/SBQueueItem.h +++ b/lldb/include/lldb/API/SBQueueItem.h @@ -22,6 +22,8 @@ public: ~SBQueueItem(); + explicit operator bool() const; + bool IsValid() const; void Clear(); diff --git a/lldb/include/lldb/API/SBSection.h b/lldb/include/lldb/API/SBSection.h index 647b1afa06f..55460b0dcdd 100644 --- a/lldb/include/lldb/API/SBSection.h +++ b/lldb/include/lldb/API/SBSection.h @@ -24,6 +24,8 @@ public: const lldb::SBSection &operator=(const lldb::SBSection &rhs); + explicit operator bool() const; + bool IsValid() const; const char *GetName(); diff --git a/lldb/include/lldb/API/SBStream.h b/lldb/include/lldb/API/SBStream.h index 4a6eedcbf46..8afbf457562 100644 --- a/lldb/include/lldb/API/SBStream.h +++ b/lldb/include/lldb/API/SBStream.h @@ -23,6 +23,8 @@ public: ~SBStream(); + explicit operator bool() const; + bool IsValid() const; // If this stream is not redirected to a file, it will maintain a local cache diff --git a/lldb/include/lldb/API/SBStringList.h b/lldb/include/lldb/API/SBStringList.h index e10153ee30c..1df1e45f96f 100644 --- a/lldb/include/lldb/API/SBStringList.h +++ b/lldb/include/lldb/API/SBStringList.h @@ -23,6 +23,8 @@ public: ~SBStringList(); + explicit operator bool() const; + bool IsValid() const; void AppendString(const char *str); diff --git a/lldb/include/lldb/API/SBStructuredData.h b/lldb/include/lldb/API/SBStructuredData.h index ee991bc7529..ef106f7e93a 100644 --- a/lldb/include/lldb/API/SBStructuredData.h +++ b/lldb/include/lldb/API/SBStructuredData.h @@ -28,6 +28,8 @@ public: lldb::SBStructuredData &operator=(const lldb::SBStructuredData &rhs); + explicit operator bool() const; + bool IsValid() const; lldb::SBError SetFromJSON(lldb::SBStream &stream); diff --git a/lldb/include/lldb/API/SBSymbol.h b/lldb/include/lldb/API/SBSymbol.h index 7086cd06702..6193dc3c768 100644 --- a/lldb/include/lldb/API/SBSymbol.h +++ b/lldb/include/lldb/API/SBSymbol.h @@ -26,6 +26,8 @@ public: const lldb::SBSymbol &operator=(const lldb::SBSymbol &rhs); + explicit operator bool() const; + bool IsValid() const; const char *GetName() const; diff --git a/lldb/include/lldb/API/SBSymbolContext.h b/lldb/include/lldb/API/SBSymbolContext.h index 57578da9d84..3d16d0989ca 100644 --- a/lldb/include/lldb/API/SBSymbolContext.h +++ b/lldb/include/lldb/API/SBSymbolContext.h @@ -29,6 +29,8 @@ public: ~SBSymbolContext(); + explicit operator bool() const; + bool IsValid() const; const lldb::SBSymbolContext &operator=(const lldb::SBSymbolContext &rhs); diff --git a/lldb/include/lldb/API/SBSymbolContextList.h b/lldb/include/lldb/API/SBSymbolContextList.h index 9ecb3ba2714..577993ce96d 100644 --- a/lldb/include/lldb/API/SBSymbolContextList.h +++ b/lldb/include/lldb/API/SBSymbolContextList.h @@ -25,6 +25,8 @@ public: const lldb::SBSymbolContextList & operator=(const lldb::SBSymbolContextList &rhs); + explicit operator bool() const; + bool IsValid() const; uint32_t GetSize() const; diff --git a/lldb/include/lldb/API/SBTarget.h b/lldb/include/lldb/API/SBTarget.h index e7066fcb184..bccfc4e779f 100644 --- a/lldb/include/lldb/API/SBTarget.h +++ b/lldb/include/lldb/API/SBTarget.h @@ -55,6 +55,8 @@ public: const lldb::SBTarget &operator=(const lldb::SBTarget &rhs); + explicit operator bool() const; + bool IsValid() const; static bool EventIsTargetEvent(const lldb::SBEvent &event); diff --git a/lldb/include/lldb/API/SBThread.h b/lldb/include/lldb/API/SBThread.h index 7e87703378c..de4e7cd2170 100644 --- a/lldb/include/lldb/API/SBThread.h +++ b/lldb/include/lldb/API/SBThread.h @@ -39,6 +39,8 @@ public: lldb::SBQueue GetQueue() const; + explicit operator bool() const; + bool IsValid() const; void Clear(); diff --git a/lldb/include/lldb/API/SBThreadCollection.h b/lldb/include/lldb/API/SBThreadCollection.h index e243635910d..1c6b4639c6e 100644 --- a/lldb/include/lldb/API/SBThreadCollection.h +++ b/lldb/include/lldb/API/SBThreadCollection.h @@ -23,6 +23,8 @@ public: ~SBThreadCollection(); + explicit operator bool() const; + bool IsValid() const; size_t GetSize(); diff --git a/lldb/include/lldb/API/SBThreadPlan.h b/lldb/include/lldb/API/SBThreadPlan.h index 8e777bf5c0b..6c57364d0bb 100644 --- a/lldb/include/lldb/API/SBThreadPlan.h +++ b/lldb/include/lldb/API/SBThreadPlan.h @@ -30,6 +30,8 @@ public: ~SBThreadPlan(); + explicit operator bool() const; + bool IsValid() const; void Clear(); diff --git a/lldb/include/lldb/API/SBTrace.h b/lldb/include/lldb/API/SBTrace.h index e4928f0239d..635f159150c 100644 --- a/lldb/include/lldb/API/SBTrace.h +++ b/lldb/include/lldb/API/SBTrace.h @@ -100,6 +100,8 @@ public: lldb::user_id_t GetTraceUID(); + explicit operator bool() const; + bool IsValid(); protected: diff --git a/lldb/include/lldb/API/SBTraceOptions.h b/lldb/include/lldb/API/SBTraceOptions.h index 2d1653a7074..4c586bfd55c 100644 --- a/lldb/include/lldb/API/SBTraceOptions.h +++ b/lldb/include/lldb/API/SBTraceOptions.h @@ -44,6 +44,8 @@ public: lldb::tid_t getThreadID(); + explicit operator bool() const; + bool IsValid(); protected: diff --git a/lldb/include/lldb/API/SBType.h b/lldb/include/lldb/API/SBType.h index 1efef9ac511..b3f92b7bcd0 100644 --- a/lldb/include/lldb/API/SBType.h +++ b/lldb/include/lldb/API/SBType.h @@ -25,6 +25,8 @@ public: lldb::SBTypeMember &operator=(const lldb::SBTypeMember &rhs); + explicit operator bool() const; + bool IsValid() const; const char *GetName(); @@ -64,6 +66,8 @@ public: lldb::SBTypeMemberFunction &operator=(const lldb::SBTypeMemberFunction &rhs); + explicit operator bool() const; + bool IsValid() const; const char *GetName(); @@ -105,6 +109,8 @@ public: ~SBType(); + explicit operator bool() const; + bool IsValid() const; uint64_t GetByteSize(); @@ -235,6 +241,8 @@ public: lldb::SBTypeList &operator=(const lldb::SBTypeList &rhs); + explicit operator bool() const; + bool IsValid(); void Append(lldb::SBType type); diff --git a/lldb/include/lldb/API/SBTypeCategory.h b/lldb/include/lldb/API/SBTypeCategory.h index 1d202fb4462..89ab7e56d7d 100644 --- a/lldb/include/lldb/API/SBTypeCategory.h +++ b/lldb/include/lldb/API/SBTypeCategory.h @@ -22,6 +22,8 @@ public: ~SBTypeCategory(); + explicit operator bool() const; + bool IsValid() const; bool GetEnabled(); diff --git a/lldb/include/lldb/API/SBTypeEnumMember.h b/lldb/include/lldb/API/SBTypeEnumMember.h index 974246b760c..2410dbcc212 100644 --- a/lldb/include/lldb/API/SBTypeEnumMember.h +++ b/lldb/include/lldb/API/SBTypeEnumMember.h @@ -24,6 +24,8 @@ public: SBTypeEnumMember &operator=(const SBTypeEnumMember &rhs); + explicit operator bool() const; + bool IsValid() const; int64_t GetValueAsSigned(); @@ -62,6 +64,8 @@ public: SBTypeEnumMemberList &operator=(const SBTypeEnumMemberList &rhs); + explicit operator bool() const; + bool IsValid(); void Append(SBTypeEnumMember entry); diff --git a/lldb/include/lldb/API/SBTypeFilter.h b/lldb/include/lldb/API/SBTypeFilter.h index 7108702a87f..4a0de11d19c 100644 --- a/lldb/include/lldb/API/SBTypeFilter.h +++ b/lldb/include/lldb/API/SBTypeFilter.h @@ -24,6 +24,8 @@ public: ~SBTypeFilter(); + explicit operator bool() const; + bool IsValid() const; uint32_t GetNumberOfExpressionPaths(); diff --git a/lldb/include/lldb/API/SBTypeFormat.h b/lldb/include/lldb/API/SBTypeFormat.h index 4575d2d2279..8a0ac77a1e9 100644 --- a/lldb/include/lldb/API/SBTypeFormat.h +++ b/lldb/include/lldb/API/SBTypeFormat.h @@ -28,6 +28,8 @@ public: ~SBTypeFormat(); + explicit operator bool() const; + bool IsValid() const; lldb::Format GetFormat(); diff --git a/lldb/include/lldb/API/SBTypeNameSpecifier.h b/lldb/include/lldb/API/SBTypeNameSpecifier.h index c78ae94435c..9fe449d029c 100644 --- a/lldb/include/lldb/API/SBTypeNameSpecifier.h +++ b/lldb/include/lldb/API/SBTypeNameSpecifier.h @@ -26,6 +26,8 @@ public: ~SBTypeNameSpecifier(); + explicit operator bool() const; + bool IsValid() const; const char *GetName(); diff --git a/lldb/include/lldb/API/SBTypeSummary.h b/lldb/include/lldb/API/SBTypeSummary.h index 8dfd3dbd1dd..bb7121f8ae4 100644 --- a/lldb/include/lldb/API/SBTypeSummary.h +++ b/lldb/include/lldb/API/SBTypeSummary.h @@ -23,6 +23,8 @@ public: ~SBTypeSummaryOptions(); + explicit operator bool() const; + bool IsValid(); lldb::LanguageType GetLanguage(); @@ -79,6 +81,8 @@ public: ~SBTypeSummary(); + explicit operator bool() const; + bool IsValid() const; bool IsFunctionCode(); diff --git a/lldb/include/lldb/API/SBTypeSynthetic.h b/lldb/include/lldb/API/SBTypeSynthetic.h index d11fe9c0ef7..f2ca0f065e8 100644 --- a/lldb/include/lldb/API/SBTypeSynthetic.h +++ b/lldb/include/lldb/API/SBTypeSynthetic.h @@ -32,6 +32,8 @@ public: ~SBTypeSynthetic(); + explicit operator bool() const; + bool IsValid() const; bool IsClassCode(); diff --git a/lldb/include/lldb/API/SBUnixSignals.h b/lldb/include/lldb/API/SBUnixSignals.h index 3883c621c78..c7e99d1f63d 100644 --- a/lldb/include/lldb/API/SBUnixSignals.h +++ b/lldb/include/lldb/API/SBUnixSignals.h @@ -26,6 +26,8 @@ public: void Clear(); + explicit operator bool() const; + bool IsValid() const; const char *GetSignalAsCString(int32_t signo) const; diff --git a/lldb/include/lldb/API/SBValue.h b/lldb/include/lldb/API/SBValue.h index 21364cf3112..c638f12b186 100644 --- a/lldb/include/lldb/API/SBValue.h +++ b/lldb/include/lldb/API/SBValue.h @@ -28,6 +28,8 @@ public: ~SBValue(); + explicit operator bool() const; + bool IsValid(); void Clear(); diff --git a/lldb/include/lldb/API/SBValueList.h b/lldb/include/lldb/API/SBValueList.h index 2b7514f1b54..d305b3564c2 100644 --- a/lldb/include/lldb/API/SBValueList.h +++ b/lldb/include/lldb/API/SBValueList.h @@ -23,6 +23,8 @@ public: ~SBValueList(); + explicit operator bool() const; + bool IsValid() const; void Clear(); diff --git a/lldb/include/lldb/API/SBVariablesOptions.h b/lldb/include/lldb/API/SBVariablesOptions.h index 19bc79669b6..e226ce4ae13 100644 --- a/lldb/include/lldb/API/SBVariablesOptions.h +++ b/lldb/include/lldb/API/SBVariablesOptions.h @@ -26,6 +26,8 @@ public: ~SBVariablesOptions(); + explicit operator bool() const; + bool IsValid() const; bool GetIncludeArguments() const; diff --git a/lldb/include/lldb/API/SBWatchpoint.h b/lldb/include/lldb/API/SBWatchpoint.h index 9eb3b75c53f..f779030d0f6 100644 --- a/lldb/include/lldb/API/SBWatchpoint.h +++ b/lldb/include/lldb/API/SBWatchpoint.h @@ -25,6 +25,8 @@ public: const lldb::SBWatchpoint &operator=(const lldb::SBWatchpoint &rhs); + explicit operator bool() const; + bool IsValid() const; SBError GetError(); diff --git a/lldb/scripts/Python/modify-python-lldb.py b/lldb/scripts/Python/modify-python-lldb.py index 831de5ab38e..8852ad4166f 100644 --- a/lldb/scripts/Python/modify-python-lldb.py +++ b/lldb/scripts/Python/modify-python-lldb.py @@ -91,16 +91,6 @@ len_def = " def __len__(self): return self.%s()" eq_def = " def __eq__(self, other): return isinstance(other, %s) and %s" ne_def = " def __ne__(self, other): return not self.__eq__(other)" -# Called to implement truth value testing and the built-in operation bool(); -# Note that Python 2 uses __nonzero__(), whereas Python 3 uses __bool__() -# should return False or True, or their integer equivalents 0 or 1. -# Delegate to self.IsValid() if it is defined for the current lldb object. - -if six.PY2: - nonzero_def = " def __nonzero__(self): return self.IsValid()" -else: - nonzero_def = " def __bool__(self): return self.IsValid()" - # A convenience iterator for SBSymbol! symbol_in_section_iter_def = ''' def symbol_in_section_iter(self, section): @@ -332,11 +322,6 @@ for line in content.splitlines(): if one_liner_docstring_pattern.match(line): line = char_to_str_xform(line) - # Look for 'def IsValid(*args):', and once located, add implementation - # of truth value testing for this object by delegation. - if isvalid_pattern.search(line): - new_content.add_line(nonzero_def) - # Pass the original line of content to new_content. new_content.add_line(line) diff --git a/lldb/scripts/interface/SBAddress.i b/lldb/scripts/interface/SBAddress.i index 1f1419d57f5..dc22e4c3498 100644 --- a/lldb/scripts/interface/SBAddress.i +++ b/lldb/scripts/interface/SBAddress.i @@ -62,6 +62,8 @@ public: bool IsValid () const; + explicit operator bool() const; + void Clear (); diff --git a/lldb/scripts/interface/SBBlock.i b/lldb/scripts/interface/SBBlock.i index 191c32bed0a..480589415dd 100644 --- a/lldb/scripts/interface/SBBlock.i +++ b/lldb/scripts/interface/SBBlock.i @@ -30,6 +30,8 @@ public: bool IsValid () const; + explicit operator bool() const; + %feature("docstring", " Get the function name if this block represents an inlined function; otherwise, return None. diff --git a/lldb/scripts/interface/SBBreakpoint.i b/lldb/scripts/interface/SBBreakpoint.i index 6d367df1b82..d0b6bb91b42 100644 --- a/lldb/scripts/interface/SBBreakpoint.i +++ b/lldb/scripts/interface/SBBreakpoint.i @@ -91,6 +91,8 @@ public: bool IsValid() const; + explicit operator bool() const; + void ClearAllBreakpointSites (); diff --git a/lldb/scripts/interface/SBBreakpointLocation.i b/lldb/scripts/interface/SBBreakpointLocation.i index b9f857de06b..8ca7a255d90 100644 --- a/lldb/scripts/interface/SBBreakpointLocation.i +++ b/lldb/scripts/interface/SBBreakpointLocation.i @@ -34,6 +34,8 @@ public: bool IsValid() const; + explicit operator bool() const; + lldb::SBAddress GetAddress(); diff --git a/lldb/scripts/interface/SBBreakpointName.i b/lldb/scripts/interface/SBBreakpointName.i index cdffd27842e..cc0dcfa97d6 100644 --- a/lldb/scripts/interface/SBBreakpointName.i +++ b/lldb/scripts/interface/SBBreakpointName.i @@ -42,6 +42,8 @@ public: bool operator!=(const lldb::SBBreakpointName &rhs); + explicit operator bool() const; + bool IsValid() const; const char *GetName() const; diff --git a/lldb/scripts/interface/SBBroadcaster.i b/lldb/scripts/interface/SBBroadcaster.i index 4994d0f2104..3c8b39bb4ca 100644 --- a/lldb/scripts/interface/SBBroadcaster.i +++ b/lldb/scripts/interface/SBBroadcaster.i @@ -33,6 +33,8 @@ public: bool IsValid () const; + explicit operator bool() const; + void Clear (); diff --git a/lldb/scripts/interface/SBCommandInterpreter.i b/lldb/scripts/interface/SBCommandInterpreter.i index 3667a783538..721a5cdf70a 100644 --- a/lldb/scripts/interface/SBCommandInterpreter.i +++ b/lldb/scripts/interface/SBCommandInterpreter.i @@ -145,6 +145,8 @@ public: bool IsValid() const; + explicit operator bool() const; + const char * GetIOHandlerControlSequence(char ch); diff --git a/lldb/scripts/interface/SBCommandReturnObject.i b/lldb/scripts/interface/SBCommandReturnObject.i index 48a52364cb0..33507bc8dcf 100644 --- a/lldb/scripts/interface/SBCommandReturnObject.i +++ b/lldb/scripts/interface/SBCommandReturnObject.i @@ -28,6 +28,8 @@ public: bool IsValid() const; + explicit operator bool() const; + const char * GetOutput (); diff --git a/lldb/scripts/interface/SBCommunication.i b/lldb/scripts/interface/SBCommunication.i index cd55a68ab2b..87d3d0c9c5e 100644 --- a/lldb/scripts/interface/SBCommunication.i +++ b/lldb/scripts/interface/SBCommunication.i @@ -30,6 +30,8 @@ public: bool IsValid () const; + explicit operator bool() const; + lldb::SBBroadcaster GetBroadcaster (); diff --git a/lldb/scripts/interface/SBCompileUnit.i b/lldb/scripts/interface/SBCompileUnit.i index 01ad7c5482d..0ddc576bc45 100644 --- a/lldb/scripts/interface/SBCompileUnit.i +++ b/lldb/scripts/interface/SBCompileUnit.i @@ -56,6 +56,8 @@ public: bool IsValid () const; + explicit operator bool() const; + lldb::SBFileSpec GetFileSpec () const; diff --git a/lldb/scripts/interface/SBData.i b/lldb/scripts/interface/SBData.i index af8221ab66d..7710acdbe86 100644 --- a/lldb/scripts/interface/SBData.i +++ b/lldb/scripts/interface/SBData.i @@ -31,6 +31,8 @@ public: bool IsValid(); + explicit operator bool() const; + size_t GetByteSize (); diff --git a/lldb/scripts/interface/SBDebugger.i b/lldb/scripts/interface/SBDebugger.i index a3ecc157359..da9c9b75cc9 100644 --- a/lldb/scripts/interface/SBDebugger.i +++ b/lldb/scripts/interface/SBDebugger.i @@ -152,6 +152,8 @@ public: bool IsValid() const; + explicit operator bool() const; + void Clear (); diff --git a/lldb/scripts/interface/SBDeclaration.i b/lldb/scripts/interface/SBDeclaration.i index b202bc78d8d..e1b299c91c1 100644 --- a/lldb/scripts/interface/SBDeclaration.i +++ b/lldb/scripts/interface/SBDeclaration.i @@ -23,6 +23,8 @@ namespace lldb { bool IsValid () const; + + explicit operator bool() const; lldb::SBFileSpec GetFileSpec () const; diff --git a/lldb/scripts/interface/SBError.i b/lldb/scripts/interface/SBError.i index 4531935340f..a2df0ad99e7 100644 --- a/lldb/scripts/interface/SBError.i +++ b/lldb/scripts/interface/SBError.i @@ -101,6 +101,8 @@ public: bool IsValid () const; + explicit operator bool() const; + bool GetDescription (lldb::SBStream &description); diff --git a/lldb/scripts/interface/SBEvent.i b/lldb/scripts/interface/SBEvent.i index a796473a63c..c907e408d91 100644 --- a/lldb/scripts/interface/SBEvent.i +++ b/lldb/scripts/interface/SBEvent.i @@ -124,6 +124,8 @@ public: bool IsValid() const; + explicit operator bool() const; + const char * GetDataFlavor (); diff --git a/lldb/scripts/interface/SBFileSpec.i b/lldb/scripts/interface/SBFileSpec.i index c82e54fca52..de3788ddd2d 100644 --- a/lldb/scripts/interface/SBFileSpec.i +++ b/lldb/scripts/interface/SBFileSpec.i @@ -45,6 +45,8 @@ public: bool IsValid() const; + explicit operator bool() const; + bool Exists () const; diff --git a/lldb/scripts/interface/SBFrame.i b/lldb/scripts/interface/SBFrame.i index d3f37a6134b..c1021eb855e 100644 --- a/lldb/scripts/interface/SBFrame.i +++ b/lldb/scripts/interface/SBFrame.i @@ -59,6 +59,8 @@ public: bool IsValid() const; + explicit operator bool() const; + uint32_t GetFrameID () const; diff --git a/lldb/scripts/interface/SBFunction.i b/lldb/scripts/interface/SBFunction.i index c415ea8ea30..87c7b13c55a 100644 --- a/lldb/scripts/interface/SBFunction.i +++ b/lldb/scripts/interface/SBFunction.i @@ -55,6 +55,8 @@ public: bool IsValid () const; + explicit operator bool() const; + const char * GetName() const; diff --git a/lldb/scripts/interface/SBInstruction.i b/lldb/scripts/interface/SBInstruction.i index 46c07f87815..754c510232e 100644 --- a/lldb/scripts/interface/SBInstruction.i +++ b/lldb/scripts/interface/SBInstruction.i @@ -26,6 +26,8 @@ public: bool IsValid(); + explicit operator bool() const; + lldb::SBAddress GetAddress(); diff --git a/lldb/scripts/interface/SBInstructionList.i b/lldb/scripts/interface/SBInstructionList.i index 84a3905f39d..cbc4351ee59 100644 --- a/lldb/scripts/interface/SBInstructionList.i +++ b/lldb/scripts/interface/SBInstructionList.i @@ -37,6 +37,8 @@ public: bool IsValid () const; + explicit operator bool() const; + size_t GetSize (); diff --git a/lldb/scripts/interface/SBLineEntry.i b/lldb/scripts/interface/SBLineEntry.i index 61dcc1627c5..44c96e07e05 100644 --- a/lldb/scripts/interface/SBLineEntry.i +++ b/lldb/scripts/interface/SBLineEntry.i @@ -55,6 +55,8 @@ public: bool IsValid () const; + explicit operator bool() const; + lldb::SBFileSpec GetFileSpec () const; diff --git a/lldb/scripts/interface/SBListener.i b/lldb/scripts/interface/SBListener.i index aa4ab3bd3f7..2f02aa203bb 100644 --- a/lldb/scripts/interface/SBListener.i +++ b/lldb/scripts/interface/SBListener.i @@ -33,6 +33,8 @@ public: bool IsValid () const; + explicit operator bool() const; + uint32_t StartListeningForEventClass (SBDebugger &debugger, const char *broadcaster_class, diff --git a/lldb/scripts/interface/SBModule.i b/lldb/scripts/interface/SBModule.i index 4f6e9fd9cfb..206324e6198 100644 --- a/lldb/scripts/interface/SBModule.i +++ b/lldb/scripts/interface/SBModule.i @@ -130,6 +130,8 @@ public: bool IsValid () const; + explicit operator bool() const; + void Clear(); diff --git a/lldb/scripts/interface/SBModuleSpec.i b/lldb/scripts/interface/SBModuleSpec.i index 51edbd7a09c..76b9d7fe450 100644 --- a/lldb/scripts/interface/SBModuleSpec.i +++ b/lldb/scripts/interface/SBModuleSpec.i @@ -20,6 +20,8 @@ public: bool IsValid () const; + + explicit operator bool() const; void Clear(); diff --git a/lldb/scripts/interface/SBPlatform.i b/lldb/scripts/interface/SBPlatform.i index fb5189bb6fd..d6f29e0f6d1 100644 --- a/lldb/scripts/interface/SBPlatform.i +++ b/lldb/scripts/interface/SBPlatform.i @@ -118,6 +118,8 @@ public: bool IsValid () const; + explicit operator bool() const; + void Clear (); diff --git a/lldb/scripts/interface/SBProcess.i b/lldb/scripts/interface/SBProcess.i index 87741f7128a..9cb47419d93 100644 --- a/lldb/scripts/interface/SBProcess.i +++ b/lldb/scripts/interface/SBProcess.i @@ -68,6 +68,8 @@ public: bool IsValid() const; + explicit operator bool() const; + lldb::SBTarget GetTarget() const; diff --git a/lldb/scripts/interface/SBProcessInfo.i b/lldb/scripts/interface/SBProcessInfo.i index f8c5cfe83b6..009842599bf 100644 --- a/lldb/scripts/interface/SBProcessInfo.i +++ b/lldb/scripts/interface/SBProcessInfo.i @@ -25,6 +25,8 @@ public: bool IsValid (); + explicit operator bool() const; + const char * GetName (); diff --git a/lldb/scripts/interface/SBQueue.i b/lldb/scripts/interface/SBQueue.i index 8222c03ecbc..0ddc1fa3eaa 100644 --- a/lldb/scripts/interface/SBQueue.i +++ b/lldb/scripts/interface/SBQueue.i @@ -20,6 +20,8 @@ public: bool IsValid() const; + explicit operator bool() const; + void Clear (); diff --git a/lldb/scripts/interface/SBQueueItem.i b/lldb/scripts/interface/SBQueueItem.i index 10cd8b4e9d2..c056c9a7ab9 100644 --- a/lldb/scripts/interface/SBQueueItem.i +++ b/lldb/scripts/interface/SBQueueItem.i @@ -20,6 +20,8 @@ public: bool IsValid() const; + explicit operator bool() const; + void Clear (); diff --git a/lldb/scripts/interface/SBSection.i b/lldb/scripts/interface/SBSection.i index e5d72d6bc8e..9cf7052063b 100644 --- a/lldb/scripts/interface/SBSection.i +++ b/lldb/scripts/interface/SBSection.i @@ -49,6 +49,8 @@ public: bool IsValid () const; + explicit operator bool() const; + const char * GetName (); diff --git a/lldb/scripts/interface/SBStream.i b/lldb/scripts/interface/SBStream.i index a256820115d..f6562adc6dc 100644 --- a/lldb/scripts/interface/SBStream.i +++ b/lldb/scripts/interface/SBStream.i @@ -48,6 +48,8 @@ public: bool IsValid() const; + explicit operator bool() const; + %feature("docstring", " //-------------------------------------------------------------------------- /// If this stream is not redirected to a file, it will maintain a local diff --git a/lldb/scripts/interface/SBStringList.i b/lldb/scripts/interface/SBStringList.i index bc87a180e41..48869a146ad 100644 --- a/lldb/scripts/interface/SBStringList.i +++ b/lldb/scripts/interface/SBStringList.i @@ -21,6 +21,8 @@ public: bool IsValid() const; + explicit operator bool() const; + void AppendString (const char *str); diff --git a/lldb/scripts/interface/SBStructuredData.i b/lldb/scripts/interface/SBStructuredData.i index 272263374af..99b32474b17 100644 --- a/lldb/scripts/interface/SBStructuredData.i +++ b/lldb/scripts/interface/SBStructuredData.i @@ -28,6 +28,8 @@ namespace lldb { bool IsValid() const; + explicit operator bool() const; + void Clear(); diff --git a/lldb/scripts/interface/SBSymbol.i b/lldb/scripts/interface/SBSymbol.i index 550ba1c93d2..07852bb615f 100644 --- a/lldb/scripts/interface/SBSymbol.i +++ b/lldb/scripts/interface/SBSymbol.i @@ -27,6 +27,8 @@ public: bool IsValid () const; + explicit operator bool() const; + const char * GetName() const; diff --git a/lldb/scripts/interface/SBSymbolContext.i b/lldb/scripts/interface/SBSymbolContext.i index 712ede43712..2ccb4fa0ff5 100644 --- a/lldb/scripts/interface/SBSymbolContext.i +++ b/lldb/scripts/interface/SBSymbolContext.i @@ -57,6 +57,8 @@ public: bool IsValid () const; + explicit operator bool() const; + lldb::SBModule GetModule (); lldb::SBCompileUnit GetCompileUnit (); lldb::SBFunction GetFunction (); diff --git a/lldb/scripts/interface/SBSymbolContextList.i b/lldb/scripts/interface/SBSymbolContextList.i index 520b36df33d..ee3df2f6d2d 100644 --- a/lldb/scripts/interface/SBSymbolContextList.i +++ b/lldb/scripts/interface/SBSymbolContextList.i @@ -41,6 +41,8 @@ public: bool IsValid () const; + explicit operator bool() const; + uint32_t GetSize() const; diff --git a/lldb/scripts/interface/SBTarget.i b/lldb/scripts/interface/SBTarget.i index 89eba1ac014..7ae234f8b2c 100644 --- a/lldb/scripts/interface/SBTarget.i +++ b/lldb/scripts/interface/SBTarget.i @@ -80,6 +80,8 @@ public: bool IsValid() const; + explicit operator bool() const; + static bool EventIsTargetEvent (const lldb::SBEvent &event); diff --git a/lldb/scripts/interface/SBThread.i b/lldb/scripts/interface/SBThread.i index 83666f90892..d23722511eb 100644 --- a/lldb/scripts/interface/SBThread.i +++ b/lldb/scripts/interface/SBThread.i @@ -74,6 +74,8 @@ public: bool IsValid() const; + explicit operator bool() const; + void Clear (); diff --git a/lldb/scripts/interface/SBThreadCollection.i b/lldb/scripts/interface/SBThreadCollection.i index bbdf25fbcae..bcfbc6b6f43 100644 --- a/lldb/scripts/interface/SBThreadCollection.i +++ b/lldb/scripts/interface/SBThreadCollection.i @@ -25,6 +25,8 @@ public: bool IsValid () const; + + explicit operator bool() const; size_t GetSize (); diff --git a/lldb/scripts/interface/SBThreadPlan.i b/lldb/scripts/interface/SBThreadPlan.i index d70c37ac166..c5fa43a9dee 100644 --- a/lldb/scripts/interface/SBThreadPlan.i +++ b/lldb/scripts/interface/SBThreadPlan.i @@ -40,6 +40,8 @@ public: bool IsValid() const; + explicit operator bool() const; + void Clear (); @@ -90,6 +92,8 @@ public: bool IsValid(); + explicit operator bool() const; + // This section allows an SBThreadPlan to push another of the common types of plans... SBThreadPlan QueueThreadPlanForStepOverRange (SBAddress &start_address, diff --git a/lldb/scripts/interface/SBTrace.i b/lldb/scripts/interface/SBTrace.i index d72ece30d9f..a4cb2667ec1 100644 --- a/lldb/scripts/interface/SBTrace.i +++ b/lldb/scripts/interface/SBTrace.i @@ -27,6 +27,8 @@ public: lldb::user_id_t GetTraceUID(); + explicit operator bool() const; + bool IsValid(); }; diff --git a/lldb/scripts/interface/SBTraceOptions.i b/lldb/scripts/interface/SBTraceOptions.i index 30cceab3257..ce17af5376c 100644 --- a/lldb/scripts/interface/SBTraceOptions.i +++ b/lldb/scripts/interface/SBTraceOptions.i @@ -32,6 +32,8 @@ public: lldb::tid_t getThreadID(); + explicit operator bool() const; + bool IsValid(); }; } diff --git a/lldb/scripts/interface/SBType.i b/lldb/scripts/interface/SBType.i index fc0afa7a276..79df1a56034 100644 --- a/lldb/scripts/interface/SBType.i +++ b/lldb/scripts/interface/SBType.i @@ -24,6 +24,8 @@ public: bool IsValid() const; + explicit operator bool() const; + const char * GetName (); @@ -78,6 +80,8 @@ public: bool IsValid() const; + + explicit operator bool() const; const char * GetName (); @@ -196,6 +200,8 @@ public: bool IsValid(); + explicit operator bool() const; + uint64_t GetByteSize(); @@ -487,6 +493,8 @@ public: bool IsValid(); + explicit operator bool() const; + void Append (lldb::SBType type); diff --git a/lldb/scripts/interface/SBTypeCategory.i b/lldb/scripts/interface/SBTypeCategory.i index fd4a495327d..399fe8364b2 100644 --- a/lldb/scripts/interface/SBTypeCategory.i +++ b/lldb/scripts/interface/SBTypeCategory.i @@ -24,6 +24,8 @@ namespace lldb { bool IsValid() const; + + explicit operator bool() const; bool GetEnabled (); diff --git a/lldb/scripts/interface/SBTypeEnumMember.i b/lldb/scripts/interface/SBTypeEnumMember.i index 0a3b3022a1f..b95d7816830 100644 --- a/lldb/scripts/interface/SBTypeEnumMember.i +++ b/lldb/scripts/interface/SBTypeEnumMember.i @@ -25,6 +25,8 @@ public: bool IsValid() const; + explicit operator bool() const; + int64_t GetValueAsSigned(); @@ -90,6 +92,8 @@ public: bool IsValid(); + explicit operator bool() const; + void Append (SBTypeEnumMember entry); diff --git a/lldb/scripts/interface/SBTypeFilter.i b/lldb/scripts/interface/SBTypeFilter.i index dd86e5afab0..8d5e724a0f1 100644 --- a/lldb/scripts/interface/SBTypeFilter.i +++ b/lldb/scripts/interface/SBTypeFilter.i @@ -26,6 +26,8 @@ namespace lldb { bool IsValid() const; + + explicit operator bool() const; bool IsEqualTo (lldb::SBTypeFilter &rhs); diff --git a/lldb/scripts/interface/SBTypeFormat.i b/lldb/scripts/interface/SBTypeFormat.i index 85f11cb5727..43a8ddf14a2 100644 --- a/lldb/scripts/interface/SBTypeFormat.i +++ b/lldb/scripts/interface/SBTypeFormat.i @@ -28,6 +28,8 @@ namespace lldb { bool IsValid() const; + + explicit operator bool() const; bool IsEqualTo (lldb::SBTypeFormat &rhs); diff --git a/lldb/scripts/interface/SBTypeNameSpecifier.i b/lldb/scripts/interface/SBTypeNameSpecifier.i index e226912c5f8..f5b3597bddc 100644 --- a/lldb/scripts/interface/SBTypeNameSpecifier.i +++ b/lldb/scripts/interface/SBTypeNameSpecifier.i @@ -29,6 +29,8 @@ namespace lldb { bool IsValid() const; + + explicit operator bool() const; bool IsEqualTo (lldb::SBTypeNameSpecifier &rhs); diff --git a/lldb/scripts/interface/SBTypeSummary.i b/lldb/scripts/interface/SBTypeSummary.i index 0db5a14c88f..e113c49fecb 100644 --- a/lldb/scripts/interface/SBTypeSummary.i +++ b/lldb/scripts/interface/SBTypeSummary.i @@ -18,6 +18,8 @@ namespace lldb { bool IsValid (); + + explicit operator bool() const; lldb::LanguageType GetLanguage (); @@ -57,6 +59,8 @@ namespace lldb { bool IsValid() const; + + explicit operator bool() const; bool IsEqualTo (lldb::SBTypeSummary &rhs); diff --git a/lldb/scripts/interface/SBTypeSynthetic.i b/lldb/scripts/interface/SBTypeSynthetic.i index 86febc668d0..1d5e0d35dcc 100644 --- a/lldb/scripts/interface/SBTypeSynthetic.i +++ b/lldb/scripts/interface/SBTypeSynthetic.i @@ -30,6 +30,8 @@ namespace lldb { bool IsValid() const; + + explicit operator bool() const; bool IsEqualTo (lldb::SBTypeSynthetic &rhs); diff --git a/lldb/scripts/interface/SBUnixSignals.i b/lldb/scripts/interface/SBUnixSignals.i index ccab7614f69..a895c6ac61a 100644 --- a/lldb/scripts/interface/SBUnixSignals.i +++ b/lldb/scripts/interface/SBUnixSignals.i @@ -26,6 +26,8 @@ public: bool IsValid () const; + explicit operator bool() const; + const char * GetSignalAsCString (int32_t signo) const; diff --git a/lldb/scripts/interface/SBValue.i b/lldb/scripts/interface/SBValue.i index fe5b9a0171f..68943547457 100644 --- a/lldb/scripts/interface/SBValue.i +++ b/lldb/scripts/interface/SBValue.i @@ -65,6 +65,8 @@ public: bool IsValid(); + + explicit operator bool() const; void Clear(); diff --git a/lldb/scripts/interface/SBValueList.i b/lldb/scripts/interface/SBValueList.i index fe8f920102e..c2cdda23700 100644 --- a/lldb/scripts/interface/SBValueList.i +++ b/lldb/scripts/interface/SBValueList.i @@ -77,6 +77,8 @@ public: bool IsValid() const; + + explicit operator bool() const; void Clear(); diff --git a/lldb/scripts/interface/SBVariablesOptions.i b/lldb/scripts/interface/SBVariablesOptions.i index 1774966103b..251ced72f72 100644 --- a/lldb/scripts/interface/SBVariablesOptions.i +++ b/lldb/scripts/interface/SBVariablesOptions.i @@ -19,6 +19,8 @@ public: bool IsValid () const; + + explicit operator bool() const; bool GetIncludeArguments () const; diff --git a/lldb/scripts/interface/SBWatchpoint.i b/lldb/scripts/interface/SBWatchpoint.i index 5356c109753..e6de8ef30d7 100644 --- a/lldb/scripts/interface/SBWatchpoint.i +++ b/lldb/scripts/interface/SBWatchpoint.i @@ -30,6 +30,8 @@ public: bool IsValid(); + explicit operator bool() const; + SBError GetError(); diff --git a/lldb/scripts/lldb.swig b/lldb/scripts/lldb.swig index 50bae415470..1b8889bbbc6 100644 --- a/lldb/scripts/lldb.swig +++ b/lldb/scripts/lldb.swig @@ -95,9 +95,8 @@ def lldb_iter(obj, getsize, getelem): # ============================================================================== # The modify-python-lldb.py script is responsible for post-processing this SWIG- # generated lldb.py module. It is responsible for adding support for: iteration -# protocol: __iter__, rich comparison methods: __eq__ and __ne__, truth value -# testing (and built-in operation bool()): __nonzero__, and built-in function -# len(): __len__. +# protocol: __iter__, rich comparison methods: __eq__ and __ne__, and built-in +# function len(): __len__. # ============================================================================== %} diff --git a/lldb/source/API/SBAddress.cpp b/lldb/source/API/SBAddress.cpp index 87139ca4503..2353639da5d 100644 --- a/lldb/source/API/SBAddress.cpp +++ b/lldb/source/API/SBAddress.cpp @@ -71,6 +71,10 @@ bool lldb::operator==(const SBAddress &lhs, const SBAddress &rhs) { bool SBAddress::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBAddress, IsValid); + return this->operator bool(); +} +SBAddress::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBAddress, operator bool); return m_opaque_up != NULL && m_opaque_up->IsValid(); } diff --git a/lldb/source/API/SBBlock.cpp b/lldb/source/API/SBBlock.cpp index 91d000c9337..90a916bc4cd 100644 --- a/lldb/source/API/SBBlock.cpp +++ b/lldb/source/API/SBBlock.cpp @@ -48,6 +48,10 @@ SBBlock::~SBBlock() { m_opaque_ptr = NULL; } bool SBBlock::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBBlock, IsValid); + return this->operator bool(); +} +SBBlock::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBBlock, operator bool); return m_opaque_ptr != NULL; } diff --git a/lldb/source/API/SBBreakpoint.cpp b/lldb/source/API/SBBreakpoint.cpp index 9170b4d427c..14c92f284df 100644 --- a/lldb/source/API/SBBreakpoint.cpp +++ b/lldb/source/API/SBBreakpoint.cpp @@ -92,6 +92,10 @@ break_id_t SBBreakpoint::GetID() const { bool SBBreakpoint::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBBreakpoint, IsValid); + return this->operator bool(); +} +SBBreakpoint::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBBreakpoint, operator bool); BreakpointSP bkpt_sp = GetSP(); if (!bkpt_sp) diff --git a/lldb/source/API/SBBreakpointLocation.cpp b/lldb/source/API/SBBreakpointLocation.cpp index 290d95d4b55..e91874ff4fc 100644 --- a/lldb/source/API/SBBreakpointLocation.cpp +++ b/lldb/source/API/SBBreakpointLocation.cpp @@ -65,6 +65,10 @@ BreakpointLocationSP SBBreakpointLocation::GetSP() const { bool SBBreakpointLocation::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBBreakpointLocation, IsValid); + return this->operator bool(); +} +SBBreakpointLocation::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBBreakpointLocation, operator bool); return bool(GetSP()); } diff --git a/lldb/source/API/SBBreakpointName.cpp b/lldb/source/API/SBBreakpointName.cpp index cc858a011e2..85abfdd0aa2 100644 --- a/lldb/source/API/SBBreakpointName.cpp +++ b/lldb/source/API/SBBreakpointName.cpp @@ -190,6 +190,10 @@ bool SBBreakpointName::operator!=(const lldb::SBBreakpointName &rhs) { bool SBBreakpointName::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBBreakpointName, IsValid); + return this->operator bool(); +} +SBBreakpointName::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBBreakpointName, operator bool); if (!m_impl_up) return false; diff --git a/lldb/source/API/SBBroadcaster.cpp b/lldb/source/API/SBBroadcaster.cpp index 40f4ab7c94d..ef759a836a3 100644 --- a/lldb/source/API/SBBroadcaster.cpp +++ b/lldb/source/API/SBBroadcaster.cpp @@ -139,6 +139,10 @@ void SBBroadcaster::reset(Broadcaster *broadcaster, bool owns) { bool SBBroadcaster::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBBroadcaster, IsValid); + return this->operator bool(); +} +SBBroadcaster::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBBroadcaster, operator bool); return m_opaque_ptr != NULL; } diff --git a/lldb/source/API/SBCommandInterpreter.cpp b/lldb/source/API/SBCommandInterpreter.cpp index 83f77c4c790..cb014a9336b 100644 --- a/lldb/source/API/SBCommandInterpreter.cpp +++ b/lldb/source/API/SBCommandInterpreter.cpp @@ -201,6 +201,10 @@ operator=(const SBCommandInterpreter &rhs) { bool SBCommandInterpreter::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBCommandInterpreter, IsValid); + return this->operator bool(); +} +SBCommandInterpreter::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBCommandInterpreter, operator bool); return m_opaque_ptr != nullptr; } @@ -685,6 +689,10 @@ SBCommand::SBCommand(lldb::CommandObjectSP cmd_sp) : m_opaque_sp(cmd_sp) {} bool SBCommand::IsValid() { LLDB_RECORD_METHOD_NO_ARGS(bool, SBCommand, IsValid); + return this->operator bool(); +} +SBCommand::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBCommand, operator bool); return m_opaque_sp.get() != nullptr; } diff --git a/lldb/source/API/SBCommandReturnObject.cpp b/lldb/source/API/SBCommandReturnObject.cpp index d28275c6a52..04c6e534884 100644 --- a/lldb/source/API/SBCommandReturnObject.cpp +++ b/lldb/source/API/SBCommandReturnObject.cpp @@ -60,6 +60,10 @@ operator=(const SBCommandReturnObject &rhs) { bool SBCommandReturnObject::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBCommandReturnObject, IsValid); + return this->operator bool(); +} +SBCommandReturnObject::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBCommandReturnObject, operator bool); return m_opaque_up != nullptr; } diff --git a/lldb/source/API/SBCommunication.cpp b/lldb/source/API/SBCommunication.cpp index 5ca63c4426b..6c2efa5f77c 100644 --- a/lldb/source/API/SBCommunication.cpp +++ b/lldb/source/API/SBCommunication.cpp @@ -34,6 +34,10 @@ SBCommunication::~SBCommunication() { bool SBCommunication::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBCommunication, IsValid); + return this->operator bool(); +} +SBCommunication::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBCommunication, operator bool); return m_opaque != NULL; } diff --git a/lldb/source/API/SBCompileUnit.cpp b/lldb/source/API/SBCompileUnit.cpp index b3b705f58a6..2372e0e5060 100644 --- a/lldb/source/API/SBCompileUnit.cpp +++ b/lldb/source/API/SBCompileUnit.cpp @@ -188,6 +188,10 @@ lldb::LanguageType SBCompileUnit::GetLanguage() { bool SBCompileUnit::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBCompileUnit, IsValid); + return this->operator bool(); +} +SBCompileUnit::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBCompileUnit, operator bool); return m_opaque_ptr != NULL; } diff --git a/lldb/source/API/SBData.cpp b/lldb/source/API/SBData.cpp index 845dfa6fd9f..799950cb3b0 100644 --- a/lldb/source/API/SBData.cpp +++ b/lldb/source/API/SBData.cpp @@ -59,6 +59,10 @@ const lldb::DataExtractorSP &SBData::operator*() const { return m_opaque_sp; } bool SBData::IsValid() { LLDB_RECORD_METHOD_NO_ARGS(bool, SBData, IsValid); + return this->operator bool(); +} +SBData::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBData, operator bool); return m_opaque_sp.get() != NULL; } diff --git a/lldb/source/API/SBDebugger.cpp b/lldb/source/API/SBDebugger.cpp index fc39064ddc5..693b0fefee6 100644 --- a/lldb/source/API/SBDebugger.cpp +++ b/lldb/source/API/SBDebugger.cpp @@ -294,6 +294,10 @@ void SBDebugger::MemoryPressureDetected() { bool SBDebugger::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBDebugger, IsValid); + return this->operator bool(); +} +SBDebugger::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBDebugger, operator bool); return m_opaque_sp.get() != nullptr; } diff --git a/lldb/source/API/SBDeclaration.cpp b/lldb/source/API/SBDeclaration.cpp index 9283ebe37a6..c04331aa00d 100644 --- a/lldb/source/API/SBDeclaration.cpp +++ b/lldb/source/API/SBDeclaration.cpp @@ -54,6 +54,10 @@ SBDeclaration::~SBDeclaration() {} bool SBDeclaration::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBDeclaration, IsValid); + return this->operator bool(); +} +SBDeclaration::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBDeclaration, operator bool); return m_opaque_up.get() && m_opaque_up->IsValid(); } diff --git a/lldb/source/API/SBError.cpp b/lldb/source/API/SBError.cpp index 6443fd49b1b..b7866f5a58d 100644 --- a/lldb/source/API/SBError.cpp +++ b/lldb/source/API/SBError.cpp @@ -139,6 +139,10 @@ int SBError::SetErrorStringWithFormat(const char *format, ...) { bool SBError::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBError, IsValid); + return this->operator bool(); +} +SBError::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBError, operator bool); return m_opaque_up != NULL; } diff --git a/lldb/source/API/SBEvent.cpp b/lldb/source/API/SBEvent.cpp index 5cc131ef694..9cb2ab4dd2b 100644 --- a/lldb/source/API/SBEvent.cpp +++ b/lldb/source/API/SBEvent.cpp @@ -161,6 +161,10 @@ void SBEvent::reset(Event *event_ptr) { bool SBEvent::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBEvent, IsValid); + return this->operator bool(); +} +SBEvent::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBEvent, operator bool); // Do NOT use m_opaque_ptr directly!!! Must use the SBEvent::get() accessor. // See comments in SBEvent::get().... diff --git a/lldb/source/API/SBFileSpec.cpp b/lldb/source/API/SBFileSpec.cpp index ee28c2f8dda..048d5ed15a6 100644 --- a/lldb/source/API/SBFileSpec.cpp +++ b/lldb/source/API/SBFileSpec.cpp @@ -64,6 +64,10 @@ const SBFileSpec &SBFileSpec::operator=(const SBFileSpec &rhs) { bool SBFileSpec::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBFileSpec, IsValid); + return this->operator bool(); +} +SBFileSpec::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBFileSpec, operator bool); return m_opaque_up->operator bool(); } diff --git a/lldb/source/API/SBFrame.cpp b/lldb/source/API/SBFrame.cpp index 24bea7a4967..bfa4621f591 100644 --- a/lldb/source/API/SBFrame.cpp +++ b/lldb/source/API/SBFrame.cpp @@ -91,6 +91,10 @@ void SBFrame::SetFrameSP(const StackFrameSP &lldb_object_sp) { bool SBFrame::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBFrame, IsValid); + return this->operator bool(); +} +SBFrame::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBFrame, operator bool); std::unique_lock<std::recursive_mutex> lock; ExecutionContext exe_ctx(m_opaque_sp.get(), lock); diff --git a/lldb/source/API/SBFunction.cpp b/lldb/source/API/SBFunction.cpp index 27327752aba..595f28308e9 100644 --- a/lldb/source/API/SBFunction.cpp +++ b/lldb/source/API/SBFunction.cpp @@ -46,6 +46,10 @@ SBFunction::~SBFunction() { m_opaque_ptr = NULL; } bool SBFunction::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBFunction, IsValid); + return this->operator bool(); +} +SBFunction::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBFunction, operator bool); return m_opaque_ptr != NULL; } diff --git a/lldb/source/API/SBInstruction.cpp b/lldb/source/API/SBInstruction.cpp index 53b2d196788..f73dcc405ba 100644 --- a/lldb/source/API/SBInstruction.cpp +++ b/lldb/source/API/SBInstruction.cpp @@ -94,6 +94,10 @@ SBInstruction::~SBInstruction() {} bool SBInstruction::IsValid() { LLDB_RECORD_METHOD_NO_ARGS(bool, SBInstruction, IsValid); + return this->operator bool(); +} +SBInstruction::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBInstruction, operator bool); return m_opaque_sp && m_opaque_sp->IsValid(); } diff --git a/lldb/source/API/SBInstructionList.cpp b/lldb/source/API/SBInstructionList.cpp index bc6f74c597a..9a76fe560c8 100644 --- a/lldb/source/API/SBInstructionList.cpp +++ b/lldb/source/API/SBInstructionList.cpp @@ -44,6 +44,10 @@ SBInstructionList::~SBInstructionList() {} bool SBInstructionList::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBInstructionList, IsValid); + return this->operator bool(); +} +SBInstructionList::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBInstructionList, operator bool); return m_opaque_sp.get() != NULL; } diff --git a/lldb/source/API/SBLineEntry.cpp b/lldb/source/API/SBLineEntry.cpp index e0c0a5c7bd9..c11780fc292 100644 --- a/lldb/source/API/SBLineEntry.cpp +++ b/lldb/source/API/SBLineEntry.cpp @@ -74,6 +74,10 @@ SBAddress SBLineEntry::GetEndAddress() const { bool SBLineEntry::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBLineEntry, IsValid); + return this->operator bool(); +} +SBLineEntry::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBLineEntry, operator bool); return m_opaque_up.get() && m_opaque_up->IsValid(); } diff --git a/lldb/source/API/SBListener.cpp b/lldb/source/API/SBListener.cpp index 45ae6fd7250..3107924606f 100644 --- a/lldb/source/API/SBListener.cpp +++ b/lldb/source/API/SBListener.cpp @@ -52,6 +52,10 @@ SBListener::~SBListener() {} bool SBListener::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBListener, IsValid); + return this->operator bool(); +} +SBListener::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBListener, operator bool); return m_opaque_sp != nullptr; } diff --git a/lldb/source/API/SBModule.cpp b/lldb/source/API/SBModule.cpp index 2c2670eee1a..e478304252b 100644 --- a/lldb/source/API/SBModule.cpp +++ b/lldb/source/API/SBModule.cpp @@ -80,6 +80,10 @@ SBModule::~SBModule() {} bool SBModule::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBModule, IsValid); + return this->operator bool(); +} +SBModule::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBModule, operator bool); return m_opaque_sp.get() != NULL; } diff --git a/lldb/source/API/SBModuleSpec.cpp b/lldb/source/API/SBModuleSpec.cpp index 918b17f7cb2..6d984798c39 100644 --- a/lldb/source/API/SBModuleSpec.cpp +++ b/lldb/source/API/SBModuleSpec.cpp @@ -42,6 +42,10 @@ SBModuleSpec::~SBModuleSpec() {} bool SBModuleSpec::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBModuleSpec, IsValid); + return this->operator bool(); +} +SBModuleSpec::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBModuleSpec, operator bool); return m_opaque_up->operator bool(); } diff --git a/lldb/source/API/SBPlatform.cpp b/lldb/source/API/SBPlatform.cpp index 8031e8d00c6..e6c073cc997 100644 --- a/lldb/source/API/SBPlatform.cpp +++ b/lldb/source/API/SBPlatform.cpp @@ -287,6 +287,10 @@ SBPlatform::~SBPlatform() {} bool SBPlatform::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBPlatform, IsValid); + return this->operator bool(); +} +SBPlatform::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBPlatform, operator bool); return m_opaque_sp.get() != NULL; } diff --git a/lldb/source/API/SBProcess.cpp b/lldb/source/API/SBProcess.cpp index 1d963914751..6aed8817928 100644 --- a/lldb/source/API/SBProcess.cpp +++ b/lldb/source/API/SBProcess.cpp @@ -119,6 +119,10 @@ void SBProcess::Clear() { bool SBProcess::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBProcess, IsValid); + return this->operator bool(); +} +SBProcess::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBProcess, operator bool); ProcessSP process_sp(m_opaque_wp.lock()); return ((bool)process_sp && process_sp->IsValid()); diff --git a/lldb/source/API/SBProcessInfo.cpp b/lldb/source/API/SBProcessInfo.cpp index fbf9caedbea..044ff6b6db4 100644 --- a/lldb/source/API/SBProcessInfo.cpp +++ b/lldb/source/API/SBProcessInfo.cpp @@ -50,6 +50,10 @@ void SBProcessInfo::SetProcessInfo(const ProcessInstanceInfo &proc_info_ref) { bool SBProcessInfo::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBProcessInfo, IsValid); + return this->operator bool(); +} +SBProcessInfo::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBProcessInfo, operator bool); return m_opaque_up != nullptr; } diff --git a/lldb/source/API/SBQueue.cpp b/lldb/source/API/SBQueue.cpp index 03abb808600..12a6ada8de8 100644 --- a/lldb/source/API/SBQueue.cpp +++ b/lldb/source/API/SBQueue.cpp @@ -247,6 +247,10 @@ SBQueue::~SBQueue() {} bool SBQueue::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBQueue, IsValid); + return this->operator bool(); +} +SBQueue::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBQueue, operator bool); return m_opaque_sp->IsValid(); } diff --git a/lldb/source/API/SBQueueItem.cpp b/lldb/source/API/SBQueueItem.cpp index f0aa959c641..6755505f724 100644 --- a/lldb/source/API/SBQueueItem.cpp +++ b/lldb/source/API/SBQueueItem.cpp @@ -40,6 +40,10 @@ SBQueueItem::~SBQueueItem() { m_queue_item_sp.reset(); } bool SBQueueItem::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBQueueItem, IsValid); + return this->operator bool(); +} +SBQueueItem::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBQueueItem, operator bool); return m_queue_item_sp.get() != NULL; } diff --git a/lldb/source/API/SBReproducer.cpp b/lldb/source/API/SBReproducer.cpp index 7980f1505b0..c3dad774d7f 100644 --- a/lldb/source/API/SBReproducer.cpp +++ b/lldb/source/API/SBReproducer.cpp @@ -62,6 +62,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(const lldb::SBAddress &, SBAddress, operator=,(const lldb::SBAddress &)); LLDB_REGISTER_METHOD_CONST(bool, SBAddress, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBAddress, operator bool, ()); LLDB_REGISTER_METHOD(void, SBAddress, Clear, ()); LLDB_REGISTER_METHOD(void, SBAddress, SetAddress, (lldb::SBSection, lldb::addr_t)); @@ -129,6 +130,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(const lldb::SBBlock &, SBBlock, operator=,(const lldb::SBBlock &)); LLDB_REGISTER_METHOD_CONST(bool, SBBlock, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBBlock, operator bool, ()); LLDB_REGISTER_METHOD_CONST(bool, SBBlock, IsInlined, ()); LLDB_REGISTER_METHOD_CONST(const char *, SBBlock, GetInlinedName, ()); LLDB_REGISTER_METHOD_CONST(lldb::SBFileSpec, SBBlock, @@ -165,6 +167,7 @@ SBRegistry::SBRegistry() { SBBreakpoint, operator!=,(const lldb::SBBreakpoint &)); LLDB_REGISTER_METHOD_CONST(lldb::break_id_t, SBBreakpoint, GetID, ()); LLDB_REGISTER_METHOD_CONST(bool, SBBreakpoint, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBBreakpoint, operator bool, ()); LLDB_REGISTER_METHOD(void, SBBreakpoint, ClearAllBreakpointSites, ()); LLDB_REGISTER_METHOD(lldb::SBBreakpointLocation, SBBreakpoint, FindLocationByAddress, (lldb::addr_t)); @@ -254,6 +257,7 @@ SBRegistry::SBRegistry() { const lldb::SBBreakpointLocation &, SBBreakpointLocation, operator=,(const lldb::SBBreakpointLocation &)); LLDB_REGISTER_METHOD_CONST(bool, SBBreakpointLocation, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBBreakpointLocation, operator bool, ()); LLDB_REGISTER_METHOD(lldb::SBAddress, SBBreakpointLocation, GetAddress, ()); LLDB_REGISTER_METHOD(lldb::addr_t, SBBreakpointLocation, GetLoadAddress, ()); @@ -314,6 +318,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD( bool, SBBreakpointName, operator!=,(const lldb::SBBreakpointName &)); LLDB_REGISTER_METHOD_CONST(bool, SBBreakpointName, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBBreakpointName, operator bool, ()); LLDB_REGISTER_METHOD_CONST(const char *, SBBreakpointName, GetName, ()); LLDB_REGISTER_METHOD(void, SBBreakpointName, SetEnabled, (bool)); LLDB_REGISTER_METHOD(bool, SBBreakpointName, IsEnabled, ()); @@ -376,6 +381,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(bool, SBBroadcaster, RemoveListener, (const lldb::SBListener &, uint32_t)); LLDB_REGISTER_METHOD_CONST(bool, SBBroadcaster, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBBroadcaster, operator bool, ()); LLDB_REGISTER_METHOD(void, SBBroadcaster, Clear, ()); LLDB_REGISTER_METHOD_CONST( bool, SBBroadcaster, operator==,(const lldb::SBBroadcaster &)); @@ -422,6 +428,7 @@ SBRegistry::SBRegistry() { const lldb::SBCommandInterpreter &, SBCommandInterpreter, operator=,(const lldb::SBCommandInterpreter &)); LLDB_REGISTER_METHOD_CONST(bool, SBCommandInterpreter, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBCommandInterpreter, operator bool, ()); LLDB_REGISTER_METHOD(bool, SBCommandInterpreter, CommandExists, (const char *)); LLDB_REGISTER_METHOD(bool, SBCommandInterpreter, AliasExists, @@ -498,6 +505,7 @@ SBRegistry::SBRegistry() { const char *, const char *)); LLDB_REGISTER_CONSTRUCTOR(SBCommand, ()); LLDB_REGISTER_METHOD(bool, SBCommand, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBCommand, operator bool, ()); LLDB_REGISTER_METHOD(const char *, SBCommand, GetName, ()); LLDB_REGISTER_METHOD(const char *, SBCommand, GetHelp, ()); LLDB_REGISTER_METHOD(const char *, SBCommand, GetHelpLong, ()); @@ -526,6 +534,7 @@ SBRegistry::SBRegistry() { const lldb::SBCommandReturnObject &, SBCommandReturnObject, operator=,(const lldb::SBCommandReturnObject &)); LLDB_REGISTER_METHOD_CONST(bool, SBCommandReturnObject, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBCommandReturnObject, operator bool, ()); LLDB_REGISTER_METHOD(const char *, SBCommandReturnObject, GetOutput, ()); LLDB_REGISTER_METHOD(const char *, SBCommandReturnObject, GetError, ()); LLDB_REGISTER_METHOD(size_t, SBCommandReturnObject, GetOutputSize, ()); @@ -566,6 +575,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_CONSTRUCTOR(SBCommunication, ()); LLDB_REGISTER_CONSTRUCTOR(SBCommunication, (const char *)); LLDB_REGISTER_METHOD_CONST(bool, SBCommunication, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBCommunication, operator bool, ()); LLDB_REGISTER_METHOD(bool, SBCommunication, GetCloseOnEOF, ()); LLDB_REGISTER_METHOD(void, SBCommunication, SetCloseOnEOF, (bool)); LLDB_REGISTER_METHOD(lldb::ConnectionStatus, SBCommunication, Connect, @@ -606,6 +616,7 @@ SBRegistry::SBRegistry() { (uint32_t, const lldb::SBFileSpec &, bool)); LLDB_REGISTER_METHOD(lldb::LanguageType, SBCompileUnit, GetLanguage, ()); LLDB_REGISTER_METHOD_CONST(bool, SBCompileUnit, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBCompileUnit, operator bool, ()); LLDB_REGISTER_METHOD_CONST( bool, SBCompileUnit, operator==,(const lldb::SBCompileUnit &)); LLDB_REGISTER_METHOD_CONST( @@ -619,6 +630,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(const lldb::SBData &, SBData, operator=,(const lldb::SBData &)); LLDB_REGISTER_METHOD(bool, SBData, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBData, operator bool, ()); LLDB_REGISTER_METHOD(uint8_t, SBData, GetAddressByteSize, ()); LLDB_REGISTER_METHOD(void, SBData, SetAddressByteSize, (uint8_t)); LLDB_REGISTER_METHOD(void, SBData, Clear, ()); @@ -699,6 +711,7 @@ SBRegistry::SBRegistry() { (lldb::SBDebugger &)); LLDB_REGISTER_STATIC_METHOD(void, SBDebugger, MemoryPressureDetected, ()); LLDB_REGISTER_METHOD_CONST(bool, SBDebugger, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBDebugger, operator bool, ()); LLDB_REGISTER_METHOD(void, SBDebugger, SetAsync, (bool)); LLDB_REGISTER_METHOD(bool, SBDebugger, GetAsync, ()); LLDB_REGISTER_METHOD(void, SBDebugger, SkipLLDBInitFiles, (bool)); @@ -836,6 +849,7 @@ SBRegistry::SBRegistry() { const lldb::SBDeclaration &, SBDeclaration, operator=,(const lldb::SBDeclaration &)); LLDB_REGISTER_METHOD_CONST(bool, SBDeclaration, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBDeclaration, operator bool, ()); LLDB_REGISTER_METHOD_CONST(lldb::SBFileSpec, SBDeclaration, GetFileSpec, ()); LLDB_REGISTER_METHOD_CONST(uint32_t, SBDeclaration, GetLine, ()); @@ -866,6 +880,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(void, SBError, SetErrorToGenericError, ()); LLDB_REGISTER_METHOD(void, SBError, SetErrorString, (const char *)); LLDB_REGISTER_METHOD_CONST(bool, SBError, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBError, operator bool, ()); LLDB_REGISTER_METHOD(bool, SBError, GetDescription, (lldb::SBStream &)); } { @@ -887,6 +902,7 @@ SBRegistry::SBRegistry() { (const lldb::SBBroadcaster &)); LLDB_REGISTER_METHOD(void, SBEvent, Clear, ()); LLDB_REGISTER_METHOD_CONST(bool, SBEvent, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBEvent, operator bool, ()); LLDB_REGISTER_STATIC_METHOD(const char *, SBEvent, GetCStringFromEvent, (const lldb::SBEvent &)); LLDB_REGISTER_METHOD(bool, SBEvent, GetDescription, (lldb::SBStream &)); @@ -977,6 +993,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(const lldb::SBFileSpec &, SBFileSpec, operator=,(const lldb::SBFileSpec &)); LLDB_REGISTER_METHOD_CONST(bool, SBFileSpec, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBFileSpec, operator bool, ()); LLDB_REGISTER_METHOD_CONST(bool, SBFileSpec, Exists, ()); LLDB_REGISTER_METHOD(bool, SBFileSpec, ResolveExecutableLocation, ()); LLDB_REGISTER_STATIC_METHOD(int, SBFileSpec, ResolvePath, @@ -1016,6 +1033,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(const lldb::SBFrame &, SBFrame, operator=,(const lldb::SBFrame &)); LLDB_REGISTER_METHOD_CONST(bool, SBFrame, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBFrame, operator bool, ()); LLDB_REGISTER_METHOD_CONST(lldb::SBSymbolContext, SBFrame, GetSymbolContext, (uint32_t)); LLDB_REGISTER_METHOD_CONST(lldb::SBModule, SBFrame, GetModule, ()); @@ -1085,6 +1103,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(const lldb::SBFunction &, SBFunction, operator=,(const lldb::SBFunction &)); LLDB_REGISTER_METHOD_CONST(bool, SBFunction, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBFunction, operator bool, ()); LLDB_REGISTER_METHOD_CONST(const char *, SBFunction, GetName, ()); LLDB_REGISTER_METHOD_CONST(const char *, SBFunction, GetDisplayName, ()); LLDB_REGISTER_METHOD_CONST(const char *, SBFunction, GetMangledName, ()); @@ -1124,6 +1143,7 @@ SBRegistry::SBRegistry() { const lldb::SBInstruction &, SBInstruction, operator=,(const lldb::SBInstruction &)); LLDB_REGISTER_METHOD(bool, SBInstruction, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBInstruction, operator bool, ()); LLDB_REGISTER_METHOD(lldb::SBAddress, SBInstruction, GetAddress, ()); LLDB_REGISTER_METHOD(const char *, SBInstruction, GetMnemonic, (lldb::SBTarget)); @@ -1154,6 +1174,7 @@ SBRegistry::SBRegistry() { const lldb::SBInstructionList &, SBInstructionList, operator=,(const lldb::SBInstructionList &)); LLDB_REGISTER_METHOD_CONST(bool, SBInstructionList, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBInstructionList, operator bool, ()); LLDB_REGISTER_METHOD(size_t, SBInstructionList, GetSize, ()); LLDB_REGISTER_METHOD(lldb::SBInstruction, SBInstructionList, GetInstructionAtIndex, (uint32_t)); @@ -1238,6 +1259,7 @@ SBRegistry::SBRegistry() { ()); LLDB_REGISTER_METHOD_CONST(lldb::SBAddress, SBLineEntry, GetEndAddress, ()); LLDB_REGISTER_METHOD_CONST(bool, SBLineEntry, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBLineEntry, operator bool, ()); LLDB_REGISTER_METHOD_CONST(lldb::SBFileSpec, SBLineEntry, GetFileSpec, ()); LLDB_REGISTER_METHOD_CONST(uint32_t, SBLineEntry, GetLine, ()); LLDB_REGISTER_METHOD_CONST(uint32_t, SBLineEntry, GetColumn, ()); @@ -1257,6 +1279,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(const lldb::SBListener &, SBListener, operator=,(const lldb::SBListener &)); LLDB_REGISTER_METHOD_CONST(bool, SBListener, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBListener, operator bool, ()); LLDB_REGISTER_METHOD(void, SBListener, AddEvent, (const lldb::SBEvent &)); LLDB_REGISTER_METHOD(void, SBListener, Clear, ()); LLDB_REGISTER_METHOD(uint32_t, SBListener, StartListeningForEventClass, @@ -1339,6 +1362,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(const lldb::SBModule &, SBModule, operator=,(const lldb::SBModule &)); LLDB_REGISTER_METHOD_CONST(bool, SBModule, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBModule, operator bool, ()); LLDB_REGISTER_METHOD(void, SBModule, Clear, ()); LLDB_REGISTER_METHOD_CONST(lldb::SBFileSpec, SBModule, GetFileSpec, ()); LLDB_REGISTER_METHOD_CONST(lldb::SBFileSpec, SBModule, GetPlatformFileSpec, @@ -1407,6 +1431,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(const lldb::SBModuleSpec &, SBModuleSpec, operator=,(const lldb::SBModuleSpec &)); LLDB_REGISTER_METHOD_CONST(bool, SBModuleSpec, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBModuleSpec, operator bool, ()); LLDB_REGISTER_METHOD(void, SBModuleSpec, Clear, ()); LLDB_REGISTER_METHOD(lldb::SBFileSpec, SBModuleSpec, GetFileSpec, ()); LLDB_REGISTER_METHOD(void, SBModuleSpec, SetFileSpec, @@ -1487,6 +1512,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_CONSTRUCTOR(SBPlatform, ()); LLDB_REGISTER_CONSTRUCTOR(SBPlatform, (const char *)); LLDB_REGISTER_METHOD_CONST(bool, SBPlatform, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBPlatform, operator bool, ()); LLDB_REGISTER_METHOD(void, SBPlatform, Clear, ()); LLDB_REGISTER_METHOD(const char *, SBPlatform, GetName, ()); LLDB_REGISTER_METHOD(const char *, SBPlatform, GetWorkingDirectory, ()); @@ -1534,6 +1560,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(const char *, SBProcess, GetShortPluginName, ()); LLDB_REGISTER_METHOD(void, SBProcess, Clear, ()); LLDB_REGISTER_METHOD_CONST(bool, SBProcess, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBProcess, operator bool, ()); LLDB_REGISTER_METHOD(bool, SBProcess, RemoteLaunch, (const char **, const char **, const char *, const char *, const char *, const char *, uint32_t, @@ -1654,6 +1681,7 @@ SBRegistry::SBRegistry() { lldb::SBProcessInfo &, SBProcessInfo, operator=,(const lldb::SBProcessInfo &)); LLDB_REGISTER_METHOD_CONST(bool, SBProcessInfo, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBProcessInfo, operator bool, ()); LLDB_REGISTER_METHOD(const char *, SBProcessInfo, GetName, ()); LLDB_REGISTER_METHOD(lldb::SBFileSpec, SBProcessInfo, GetExecutableFile, ()); @@ -1675,6 +1703,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(const lldb::SBQueue &, SBQueue, operator=,(const lldb::SBQueue &)); LLDB_REGISTER_METHOD_CONST(bool, SBQueue, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBQueue, operator bool, ()); LLDB_REGISTER_METHOD(void, SBQueue, Clear, ()); LLDB_REGISTER_METHOD_CONST(lldb::queue_id_t, SBQueue, GetQueueID, ()); LLDB_REGISTER_METHOD_CONST(uint32_t, SBQueue, GetIndexID, ()); @@ -1692,6 +1721,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_CONSTRUCTOR(SBQueueItem, ()); LLDB_REGISTER_CONSTRUCTOR(SBQueueItem, (const lldb::QueueItemSP &)); LLDB_REGISTER_METHOD_CONST(bool, SBQueueItem, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBQueueItem, operator bool, ()); LLDB_REGISTER_METHOD(void, SBQueueItem, Clear, ()); LLDB_REGISTER_METHOD(void, SBQueueItem, SetQueueItem, (const lldb::QueueItemSP &)); @@ -1708,6 +1738,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(const lldb::SBSection &, SBSection, operator=,(const lldb::SBSection &)); LLDB_REGISTER_METHOD_CONST(bool, SBSection, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBSection, operator bool, ()); LLDB_REGISTER_METHOD(const char *, SBSection, GetName, ()); LLDB_REGISTER_METHOD(lldb::SBSection, SBSection, GetParent, ()); LLDB_REGISTER_METHOD(lldb::SBSection, SBSection, FindSubSection, @@ -1750,6 +1781,7 @@ SBRegistry::SBRegistry() { { LLDB_REGISTER_CONSTRUCTOR(SBStream, ()); LLDB_REGISTER_METHOD_CONST(bool, SBStream, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBStream, operator bool, ()); LLDB_REGISTER_METHOD(const char *, SBStream, GetData, ()); LLDB_REGISTER_METHOD(size_t, SBStream, GetSize, ()); LLDB_REGISTER_METHOD(void, SBStream, RedirectToFile, (const char *, bool)); @@ -1763,6 +1795,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(const lldb::SBStringList &, SBStringList, operator=,(const lldb::SBStringList &)); LLDB_REGISTER_METHOD_CONST(bool, SBStringList, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBStringList, operator bool, ()); LLDB_REGISTER_METHOD(void, SBStringList, AppendString, (const char *)); LLDB_REGISTER_METHOD(void, SBStringList, AppendList, (const char **, int)); LLDB_REGISTER_METHOD(void, SBStringList, AppendList, @@ -1787,6 +1820,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(lldb::SBError, SBStructuredData, SetFromJSON, (lldb::SBStream &)); LLDB_REGISTER_METHOD_CONST(bool, SBStructuredData, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBStructuredData, operator bool, ()); LLDB_REGISTER_METHOD(void, SBStructuredData, Clear, ()); LLDB_REGISTER_METHOD_CONST(lldb::SBError, SBStructuredData, GetAsJSON, (lldb::SBStream &)); @@ -1815,6 +1849,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(const lldb::SBSymbol &, SBSymbol, operator=,(const lldb::SBSymbol &)); LLDB_REGISTER_METHOD_CONST(bool, SBSymbol, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBSymbol, operator bool, ()); LLDB_REGISTER_METHOD_CONST(const char *, SBSymbol, GetName, ()); LLDB_REGISTER_METHOD_CONST(const char *, SBSymbol, GetDisplayName, ()); LLDB_REGISTER_METHOD_CONST(const char *, SBSymbol, GetMangledName, ()); @@ -1843,6 +1878,7 @@ SBRegistry::SBRegistry() { const lldb::SBSymbolContext &, SBSymbolContext, operator=,(const lldb::SBSymbolContext &)); LLDB_REGISTER_METHOD_CONST(bool, SBSymbolContext, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBSymbolContext, operator bool, ()); LLDB_REGISTER_METHOD(lldb::SBModule, SBSymbolContext, GetModule, ()); LLDB_REGISTER_METHOD(lldb::SBCompileUnit, SBSymbolContext, GetCompileUnit, ()); @@ -1881,6 +1917,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(void, SBSymbolContextList, Append, (lldb::SBSymbolContextList &)); LLDB_REGISTER_METHOD_CONST(bool, SBSymbolContextList, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBSymbolContextList, operator bool, ()); LLDB_REGISTER_METHOD(bool, SBSymbolContextList, GetDescription, (lldb::SBStream &)); } @@ -1902,6 +1939,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_STATIC_METHOD(const char *, SBTarget, GetBroadcasterClassName, ()); LLDB_REGISTER_METHOD_CONST(bool, SBTarget, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBTarget, operator bool, ()); LLDB_REGISTER_METHOD(lldb::SBProcess, SBTarget, GetProcess, ()); LLDB_REGISTER_METHOD(lldb::SBPlatform, SBTarget, GetPlatform, ()); LLDB_REGISTER_METHOD_CONST(lldb::SBDebugger, SBTarget, GetDebugger, ()); @@ -2132,6 +2170,7 @@ SBRegistry::SBRegistry() { SBThread, operator=,(const lldb::SBThread &)); LLDB_REGISTER_METHOD_CONST(lldb::SBQueue, SBThread, GetQueue, ()); LLDB_REGISTER_METHOD_CONST(bool, SBThread, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBThread, operator bool, ()); LLDB_REGISTER_METHOD(void, SBThread, Clear, ()); LLDB_REGISTER_METHOD(lldb::StopReason, SBThread, GetStopReason, ()); LLDB_REGISTER_METHOD(size_t, SBThread, GetStopReasonDataCount, ()); @@ -2229,6 +2268,7 @@ SBRegistry::SBRegistry() { const lldb::SBThreadCollection &, SBThreadCollection, operator=,(const lldb::SBThreadCollection &)); LLDB_REGISTER_METHOD_CONST(bool, SBThreadCollection, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBThreadCollection, operator bool, ()); LLDB_REGISTER_METHOD(size_t, SBThreadCollection, GetSize, ()); LLDB_REGISTER_METHOD(lldb::SBThread, SBThreadCollection, GetThreadAtIndex, (size_t)); @@ -2242,6 +2282,7 @@ SBRegistry::SBRegistry() { SBThreadPlan, operator=,(const lldb::SBThreadPlan &)); LLDB_REGISTER_METHOD(lldb_private::ThreadPlan *, SBThreadPlan, get, ()); LLDB_REGISTER_METHOD_CONST(bool, SBThreadPlan, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBThreadPlan, operator bool, ()); LLDB_REGISTER_METHOD(void, SBThreadPlan, Clear, ()); LLDB_REGISTER_METHOD(lldb::StopReason, SBThreadPlan, GetStopReason, ()); LLDB_REGISTER_METHOD(size_t, SBThreadPlan, GetStopReasonDataCount, ()); @@ -2290,6 +2331,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(lldb::user_id_t, SBTrace, GetTraceUID, ()); LLDB_REGISTER_CONSTRUCTOR(SBTrace, ()); LLDB_REGISTER_METHOD(bool, SBTrace, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBTrace, operator bool, ()); } { LLDB_REGISTER_CONSTRUCTOR(SBTraceOptions, ()); @@ -2307,6 +2349,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(void, SBTraceOptions, setMetaDataBufferSize, (uint64_t)); LLDB_REGISTER_METHOD(bool, SBTraceOptions, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBTraceOptions, operator bool, ()); LLDB_REGISTER_METHOD(void, SBTraceOptions, setThreadID, (lldb::tid_t)); LLDB_REGISTER_METHOD(lldb::tid_t, SBTraceOptions, getThreadID, ()); } @@ -2318,6 +2361,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(lldb::SBType &, SBType, operator=,(const lldb::SBType &)); LLDB_REGISTER_METHOD_CONST(bool, SBType, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBType, operator bool, ()); LLDB_REGISTER_METHOD(uint64_t, SBType, GetByteSize, ()); LLDB_REGISTER_METHOD(bool, SBType, IsPointerType, ()); LLDB_REGISTER_METHOD(bool, SBType, IsArrayType, ()); @@ -2371,6 +2415,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_CONSTRUCTOR(SBTypeList, ()); LLDB_REGISTER_CONSTRUCTOR(SBTypeList, (const lldb::SBTypeList &)); LLDB_REGISTER_METHOD(bool, SBTypeList, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBTypeList, operator bool, ()); LLDB_REGISTER_METHOD(lldb::SBTypeList &, SBTypeList, operator=,(const lldb::SBTypeList &)); LLDB_REGISTER_METHOD(void, SBTypeList, Append, (lldb::SBType)); @@ -2381,6 +2426,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(lldb::SBTypeMember &, SBTypeMember, operator=,(const lldb::SBTypeMember &)); LLDB_REGISTER_METHOD_CONST(bool, SBTypeMember, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBTypeMember, operator bool, ()); LLDB_REGISTER_METHOD(const char *, SBTypeMember, GetName, ()); LLDB_REGISTER_METHOD(lldb::SBType, SBTypeMember, GetType, ()); LLDB_REGISTER_METHOD(uint64_t, SBTypeMember, GetOffsetInBytes, ()); @@ -2396,6 +2442,7 @@ SBRegistry::SBRegistry() { lldb::SBTypeMemberFunction &, SBTypeMemberFunction, operator=,(const lldb::SBTypeMemberFunction &)); LLDB_REGISTER_METHOD_CONST(bool, SBTypeMemberFunction, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBTypeMemberFunction, operator bool, ()); LLDB_REGISTER_METHOD(const char *, SBTypeMemberFunction, GetName, ()); LLDB_REGISTER_METHOD(const char *, SBTypeMemberFunction, GetDemangledName, ()); @@ -2416,6 +2463,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_CONSTRUCTOR(SBTypeCategory, ()); LLDB_REGISTER_CONSTRUCTOR(SBTypeCategory, (const lldb::SBTypeCategory &)); LLDB_REGISTER_METHOD_CONST(bool, SBTypeCategory, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBTypeCategory, operator bool, ()); LLDB_REGISTER_METHOD(bool, SBTypeCategory, GetEnabled, ()); LLDB_REGISTER_METHOD(void, SBTypeCategory, SetEnabled, (bool)); LLDB_REGISTER_METHOD(const char *, SBTypeCategory, GetName, ()); @@ -2488,6 +2536,7 @@ SBRegistry::SBRegistry() { lldb::SBTypeEnumMember &, SBTypeEnumMember, operator=,(const lldb::SBTypeEnumMember &)); LLDB_REGISTER_METHOD_CONST(bool, SBTypeEnumMember, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBTypeEnumMember, operator bool, ()); LLDB_REGISTER_METHOD(const char *, SBTypeEnumMember, GetName, ()); LLDB_REGISTER_METHOD(int64_t, SBTypeEnumMember, GetValueAsSigned, ()); LLDB_REGISTER_METHOD(uint64_t, SBTypeEnumMember, GetValueAsUnsigned, ()); @@ -2496,6 +2545,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_CONSTRUCTOR(SBTypeEnumMemberList, (const lldb::SBTypeEnumMemberList &)); LLDB_REGISTER_METHOD(bool, SBTypeEnumMemberList, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBTypeEnumMemberList, operator bool, ()); LLDB_REGISTER_METHOD( lldb::SBTypeEnumMemberList &, SBTypeEnumMemberList, operator=,(const lldb::SBTypeEnumMemberList &)); @@ -2512,6 +2562,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_CONSTRUCTOR(SBTypeFilter, (uint32_t)); LLDB_REGISTER_CONSTRUCTOR(SBTypeFilter, (const lldb::SBTypeFilter &)); LLDB_REGISTER_METHOD_CONST(bool, SBTypeFilter, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBTypeFilter, operator bool, ()); LLDB_REGISTER_METHOD(uint32_t, SBTypeFilter, GetOptions, ()); LLDB_REGISTER_METHOD(void, SBTypeFilter, SetOptions, (uint32_t)); LLDB_REGISTER_METHOD(bool, SBTypeFilter, GetDescription, @@ -2537,6 +2588,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_CONSTRUCTOR(SBTypeFormat, (const char *, uint32_t)); LLDB_REGISTER_CONSTRUCTOR(SBTypeFormat, (const lldb::SBTypeFormat &)); LLDB_REGISTER_METHOD_CONST(bool, SBTypeFormat, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBTypeFormat, operator bool, ()); LLDB_REGISTER_METHOD(lldb::Format, SBTypeFormat, GetFormat, ()); LLDB_REGISTER_METHOD(const char *, SBTypeFormat, GetTypeName, ()); LLDB_REGISTER_METHOD(uint32_t, SBTypeFormat, GetOptions, ()); @@ -2558,6 +2610,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_CONSTRUCTOR(SBTypeNameSpecifier, (const lldb::SBTypeNameSpecifier &)); LLDB_REGISTER_METHOD_CONST(bool, SBTypeNameSpecifier, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBTypeNameSpecifier, operator bool, ()); LLDB_REGISTER_METHOD(const char *, SBTypeNameSpecifier, GetName, ()); LLDB_REGISTER_METHOD(lldb::SBType, SBTypeNameSpecifier, GetType, ()); LLDB_REGISTER_METHOD(bool, SBTypeNameSpecifier, IsRegex, ()); @@ -2578,6 +2631,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_CONSTRUCTOR(SBTypeSummaryOptions, (const lldb::SBTypeSummaryOptions &)); LLDB_REGISTER_METHOD(bool, SBTypeSummaryOptions, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBTypeSummaryOptions, operator bool, ()); LLDB_REGISTER_METHOD(lldb::LanguageType, SBTypeSummaryOptions, GetLanguage, ()); LLDB_REGISTER_METHOD(lldb::TypeSummaryCapping, SBTypeSummaryOptions, @@ -2599,6 +2653,7 @@ SBRegistry::SBRegistry() { CreateWithScriptCode, (const char *, uint32_t)); LLDB_REGISTER_CONSTRUCTOR(SBTypeSummary, (const lldb::SBTypeSummary &)); LLDB_REGISTER_METHOD_CONST(bool, SBTypeSummary, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBTypeSummary, operator bool, ()); LLDB_REGISTER_METHOD(bool, SBTypeSummary, IsFunctionCode, ()); LLDB_REGISTER_METHOD(bool, SBTypeSummary, IsFunctionName, ()); LLDB_REGISTER_METHOD(bool, SBTypeSummary, IsSummaryString, ()); @@ -2630,6 +2685,7 @@ SBRegistry::SBRegistry() { CreateWithScriptCode, (const char *, uint32_t)); LLDB_REGISTER_CONSTRUCTOR(SBTypeSynthetic, (const lldb::SBTypeSynthetic &)); LLDB_REGISTER_METHOD_CONST(bool, SBTypeSynthetic, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBTypeSynthetic, operator bool, ()); LLDB_REGISTER_METHOD(bool, SBTypeSynthetic, IsClassCode, ()); LLDB_REGISTER_METHOD(bool, SBTypeSynthetic, IsClassName, ()); LLDB_REGISTER_METHOD(const char *, SBTypeSynthetic, GetData, ()); @@ -2658,6 +2714,7 @@ SBRegistry::SBRegistry() { SBUnixSignals, operator=,(const lldb::SBUnixSignals &)); LLDB_REGISTER_METHOD(void, SBUnixSignals, Clear, ()); LLDB_REGISTER_METHOD_CONST(bool, SBUnixSignals, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBUnixSignals, operator bool, ()); LLDB_REGISTER_METHOD_CONST(const char *, SBUnixSignals, GetSignalAsCString, (int32_t)); LLDB_REGISTER_METHOD_CONST(int32_t, SBUnixSignals, GetSignalNumberFromName, @@ -2681,6 +2738,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_METHOD(lldb::SBValue &, SBValue, operator=,(const lldb::SBValue &)); LLDB_REGISTER_METHOD(bool, SBValue, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBValue, operator bool, ()); LLDB_REGISTER_METHOD(void, SBValue, Clear, ()); LLDB_REGISTER_METHOD(lldb::SBError, SBValue, GetError, ()); LLDB_REGISTER_METHOD(lldb::user_id_t, SBValue, GetID, ()); @@ -2798,6 +2856,7 @@ SBRegistry::SBRegistry() { LLDB_REGISTER_CONSTRUCTOR(SBValueList, ()); LLDB_REGISTER_CONSTRUCTOR(SBValueList, (const lldb::SBValueList &)); LLDB_REGISTER_METHOD_CONST(bool, SBValueList, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBValueList, operator bool, ()); LLDB_REGISTER_METHOD(void, SBValueList, Clear, ()); LLDB_REGISTER_METHOD(const lldb::SBValueList &, SBValueList, operator=,(const lldb::SBValueList &)); @@ -2820,6 +2879,7 @@ SBRegistry::SBRegistry() { lldb::SBVariablesOptions &, SBVariablesOptions, operator=,(const lldb::SBVariablesOptions &)); LLDB_REGISTER_METHOD_CONST(bool, SBVariablesOptions, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBVariablesOptions, operator bool, ()); LLDB_REGISTER_METHOD_CONST(bool, SBVariablesOptions, GetIncludeArguments, ()); LLDB_REGISTER_METHOD(void, SBVariablesOptions, SetIncludeArguments, (bool)); @@ -2851,6 +2911,7 @@ SBRegistry::SBRegistry() { SBWatchpoint, operator=,(const lldb::SBWatchpoint &)); LLDB_REGISTER_METHOD(lldb::watch_id_t, SBWatchpoint, GetID, ()); LLDB_REGISTER_METHOD_CONST(bool, SBWatchpoint, IsValid, ()); + LLDB_REGISTER_METHOD_CONST(bool, SBWatchpoint, operator bool, ()); LLDB_REGISTER_METHOD(lldb::SBError, SBWatchpoint, GetError, ()); LLDB_REGISTER_METHOD(int32_t, SBWatchpoint, GetHardwareIndex, ()); LLDB_REGISTER_METHOD(lldb::addr_t, SBWatchpoint, GetWatchAddress, ()); diff --git a/lldb/source/API/SBSection.cpp b/lldb/source/API/SBSection.cpp index 0f1a9a994b9..ca4d4356a1f 100644 --- a/lldb/source/API/SBSection.cpp +++ b/lldb/source/API/SBSection.cpp @@ -48,6 +48,10 @@ SBSection::~SBSection() {} bool SBSection::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBSection, IsValid); + return this->operator bool(); +} +SBSection::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBSection, operator bool); SectionSP section_sp(GetSP()); return section_sp && section_sp->GetModule().get() != NULL; diff --git a/lldb/source/API/SBStream.cpp b/lldb/source/API/SBStream.cpp index c1fc455a687..9f9ec906e15 100644 --- a/lldb/source/API/SBStream.cpp +++ b/lldb/source/API/SBStream.cpp @@ -29,6 +29,10 @@ SBStream::~SBStream() {} bool SBStream::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBStream, IsValid); + return this->operator bool(); +} +SBStream::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBStream, operator bool); return (m_opaque_up != NULL); } diff --git a/lldb/source/API/SBStringList.cpp b/lldb/source/API/SBStringList.cpp index a248468b0cf..5a14bf82e37 100644 --- a/lldb/source/API/SBStringList.cpp +++ b/lldb/source/API/SBStringList.cpp @@ -51,6 +51,10 @@ const lldb_private::StringList &SBStringList::operator*() const { bool SBStringList::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBStringList, IsValid); + return this->operator bool(); +} +SBStringList::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBStringList, operator bool); return (m_opaque_up != NULL); } diff --git a/lldb/source/API/SBStructuredData.cpp b/lldb/source/API/SBStructuredData.cpp index 9c06015b230..97d771dfaf9 100644 --- a/lldb/source/API/SBStructuredData.cpp +++ b/lldb/source/API/SBStructuredData.cpp @@ -74,6 +74,10 @@ lldb::SBError SBStructuredData::SetFromJSON(lldb::SBStream &stream) { bool SBStructuredData::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBStructuredData, IsValid); + return this->operator bool(); +} +SBStructuredData::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBStructuredData, operator bool); return m_impl_up->IsValid(); } diff --git a/lldb/source/API/SBSymbol.cpp b/lldb/source/API/SBSymbol.cpp index a72c23b084f..791a43fcac4 100644 --- a/lldb/source/API/SBSymbol.cpp +++ b/lldb/source/API/SBSymbol.cpp @@ -45,6 +45,10 @@ void SBSymbol::SetSymbol(lldb_private::Symbol *lldb_object_ptr) { bool SBSymbol::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBSymbol, IsValid); + return this->operator bool(); +} +SBSymbol::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBSymbol, operator bool); return m_opaque_ptr != NULL; } diff --git a/lldb/source/API/SBSymbolContext.cpp b/lldb/source/API/SBSymbolContext.cpp index 4b81661feb6..5b57c6c0449 100644 --- a/lldb/source/API/SBSymbolContext.cpp +++ b/lldb/source/API/SBSymbolContext.cpp @@ -58,6 +58,10 @@ void SBSymbolContext::SetSymbolContext(const SymbolContext *sc_ptr) { bool SBSymbolContext::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBSymbolContext, IsValid); + return this->operator bool(); +} +SBSymbolContext::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBSymbolContext, operator bool); return m_opaque_up != NULL; } diff --git a/lldb/source/API/SBSymbolContextList.cpp b/lldb/source/API/SBSymbolContextList.cpp index 55943a7e1ce..86c89a54194 100644 --- a/lldb/source/API/SBSymbolContextList.cpp +++ b/lldb/source/API/SBSymbolContextList.cpp @@ -88,6 +88,10 @@ void SBSymbolContextList::Append(SBSymbolContextList &sc_list) { bool SBSymbolContextList::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBSymbolContextList, IsValid); + return this->operator bool(); +} +SBSymbolContextList::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBSymbolContextList, operator bool); return m_opaque_up != NULL; } diff --git a/lldb/source/API/SBTarget.cpp b/lldb/source/API/SBTarget.cpp index fd8aa8ae932..96bb80799f1 100644 --- a/lldb/source/API/SBTarget.cpp +++ b/lldb/source/API/SBTarget.cpp @@ -170,6 +170,10 @@ const char *SBTarget::GetBroadcasterClassName() { bool SBTarget::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTarget, IsValid); + return this->operator bool(); +} +SBTarget::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTarget, operator bool); return m_opaque_sp.get() != NULL && m_opaque_sp->IsValid(); } diff --git a/lldb/source/API/SBThread.cpp b/lldb/source/API/SBThread.cpp index 771444cb579..f437db607d8 100644 --- a/lldb/source/API/SBThread.cpp +++ b/lldb/source/API/SBThread.cpp @@ -115,6 +115,10 @@ lldb::SBQueue SBThread::GetQueue() const { bool SBThread::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBThread, IsValid); + return this->operator bool(); +} +SBThread::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBThread, operator bool); std::unique_lock<std::recursive_mutex> lock; ExecutionContext exe_ctx(m_opaque_sp.get(), lock); diff --git a/lldb/source/API/SBThreadCollection.cpp b/lldb/source/API/SBThreadCollection.cpp index b9c1e755468..90c5f810200 100644 --- a/lldb/source/API/SBThreadCollection.cpp +++ b/lldb/source/API/SBThreadCollection.cpp @@ -62,6 +62,10 @@ const lldb::ThreadCollectionSP &SBThreadCollection::operator*() const { bool SBThreadCollection::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBThreadCollection, IsValid); + return this->operator bool(); +} +SBThreadCollection::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBThreadCollection, operator bool); return m_opaque_sp.get() != NULL; } diff --git a/lldb/source/API/SBThreadPlan.cpp b/lldb/source/API/SBThreadPlan.cpp index f8646fcd6e1..fdbda1b1c1b 100644 --- a/lldb/source/API/SBThreadPlan.cpp +++ b/lldb/source/API/SBThreadPlan.cpp @@ -97,6 +97,10 @@ lldb_private::ThreadPlan *SBThreadPlan::get() { bool SBThreadPlan::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBThreadPlan, IsValid); + return this->operator bool(); +} +SBThreadPlan::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBThreadPlan, operator bool); return m_opaque_sp.get() != NULL; } diff --git a/lldb/source/API/SBTrace.cpp b/lldb/source/API/SBTrace.cpp index 1322bcc8097..e7b4ad64866 100644 --- a/lldb/source/API/SBTrace.cpp +++ b/lldb/source/API/SBTrace.cpp @@ -116,6 +116,10 @@ void SBTrace::SetSP(const ProcessSP &process_sp) { m_opaque_wp = process_sp; } bool SBTrace::IsValid() { LLDB_RECORD_METHOD_NO_ARGS(bool, SBTrace, IsValid); + return this->operator bool(); +} +SBTrace::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTrace, operator bool); if (!m_trace_impl_sp) return false; diff --git a/lldb/source/API/SBTraceOptions.cpp b/lldb/source/API/SBTraceOptions.cpp index a9c799a7428..2512b7db2d8 100644 --- a/lldb/source/API/SBTraceOptions.cpp +++ b/lldb/source/API/SBTraceOptions.cpp @@ -104,6 +104,10 @@ void SBTraceOptions::setMetaDataBufferSize(uint64_t size) { bool SBTraceOptions::IsValid() { LLDB_RECORD_METHOD_NO_ARGS(bool, SBTraceOptions, IsValid); + return this->operator bool(); +} +SBTraceOptions::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTraceOptions, operator bool); if (m_traceoptions_sp) return true; diff --git a/lldb/source/API/SBType.cpp b/lldb/source/API/SBType.cpp index f86155811cf..7c002db0bd7 100644 --- a/lldb/source/API/SBType.cpp +++ b/lldb/source/API/SBType.cpp @@ -107,6 +107,10 @@ const TypeImpl &SBType::ref() const { bool SBType::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBType, IsValid); + return this->operator bool(); +} +SBType::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBType, operator bool); if (m_opaque_sp.get() == NULL) return false; @@ -570,6 +574,10 @@ SBTypeList::SBTypeList(const SBTypeList &rhs) bool SBTypeList::IsValid() { LLDB_RECORD_METHOD_NO_ARGS(bool, SBTypeList, IsValid); + return this->operator bool(); +} +SBTypeList::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeList, operator bool); return (m_opaque_up != NULL); } @@ -639,6 +647,10 @@ lldb::SBTypeMember &SBTypeMember::operator=(const lldb::SBTypeMember &rhs) { bool SBTypeMember::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeMember, IsValid); + return this->operator bool(); +} +SBTypeMember::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeMember, operator bool); return m_opaque_up.get(); } @@ -764,6 +776,10 @@ operator=(const lldb::SBTypeMemberFunction &rhs) { bool SBTypeMemberFunction::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeMemberFunction, IsValid); + return this->operator bool(); +} +SBTypeMemberFunction::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeMemberFunction, operator bool); return m_opaque_sp.get(); } diff --git a/lldb/source/API/SBTypeCategory.cpp b/lldb/source/API/SBTypeCategory.cpp index 22eff9fcb9c..dac9f8a0407 100644 --- a/lldb/source/API/SBTypeCategory.cpp +++ b/lldb/source/API/SBTypeCategory.cpp @@ -44,6 +44,10 @@ SBTypeCategory::~SBTypeCategory() {} bool SBTypeCategory::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeCategory, IsValid); + return this->operator bool(); +} +SBTypeCategory::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeCategory, operator bool); return (m_opaque_sp.get() != NULL); } diff --git a/lldb/source/API/SBTypeEnumMember.cpp b/lldb/source/API/SBTypeEnumMember.cpp index 0a39f9166d9..5b07e4c91f5 100644 --- a/lldb/source/API/SBTypeEnumMember.cpp +++ b/lldb/source/API/SBTypeEnumMember.cpp @@ -50,6 +50,10 @@ SBTypeEnumMember &SBTypeEnumMember::operator=(const SBTypeEnumMember &rhs) { bool SBTypeEnumMember::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeEnumMember, IsValid); + return this->operator bool(); +} +SBTypeEnumMember::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeEnumMember, operator bool); return m_opaque_sp.get(); } @@ -120,6 +124,10 @@ SBTypeEnumMemberList::SBTypeEnumMemberList(const SBTypeEnumMemberList &rhs) bool SBTypeEnumMemberList::IsValid() { LLDB_RECORD_METHOD_NO_ARGS(bool, SBTypeEnumMemberList, IsValid); + return this->operator bool(); +} +SBTypeEnumMemberList::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeEnumMemberList, operator bool); return (m_opaque_up != NULL); } diff --git a/lldb/source/API/SBTypeFilter.cpp b/lldb/source/API/SBTypeFilter.cpp index 53ae9fd7b95..3cd9d3094d8 100644 --- a/lldb/source/API/SBTypeFilter.cpp +++ b/lldb/source/API/SBTypeFilter.cpp @@ -35,6 +35,10 @@ SBTypeFilter::~SBTypeFilter() {} bool SBTypeFilter::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeFilter, IsValid); + return this->operator bool(); +} +SBTypeFilter::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeFilter, operator bool); return m_opaque_sp.get() != NULL; } diff --git a/lldb/source/API/SBTypeFormat.cpp b/lldb/source/API/SBTypeFormat.cpp index 667bca822fb..41c26947736 100644 --- a/lldb/source/API/SBTypeFormat.cpp +++ b/lldb/source/API/SBTypeFormat.cpp @@ -44,6 +44,10 @@ SBTypeFormat::~SBTypeFormat() {} bool SBTypeFormat::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeFormat, IsValid); + return this->operator bool(); +} +SBTypeFormat::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeFormat, operator bool); return m_opaque_sp.get() != NULL; } diff --git a/lldb/source/API/SBTypeNameSpecifier.cpp b/lldb/source/API/SBTypeNameSpecifier.cpp index 6f6d59e08de..875391f7a8d 100644 --- a/lldb/source/API/SBTypeNameSpecifier.cpp +++ b/lldb/source/API/SBTypeNameSpecifier.cpp @@ -49,6 +49,10 @@ SBTypeNameSpecifier::~SBTypeNameSpecifier() {} bool SBTypeNameSpecifier::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeNameSpecifier, IsValid); + return this->operator bool(); +} +SBTypeNameSpecifier::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeNameSpecifier, operator bool); return m_opaque_sp.get() != NULL; } diff --git a/lldb/source/API/SBTypeSummary.cpp b/lldb/source/API/SBTypeSummary.cpp index e6858df87f7..0c894110218 100644 --- a/lldb/source/API/SBTypeSummary.cpp +++ b/lldb/source/API/SBTypeSummary.cpp @@ -37,6 +37,10 @@ SBTypeSummaryOptions::~SBTypeSummaryOptions() {} bool SBTypeSummaryOptions::IsValid() { LLDB_RECORD_METHOD_NO_ARGS(bool, SBTypeSummaryOptions, IsValid); + return this->operator bool(); +} +SBTypeSummaryOptions::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeSummaryOptions, operator bool); return m_opaque_up.get(); } @@ -193,6 +197,10 @@ SBTypeSummary::~SBTypeSummary() {} bool SBTypeSummary::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeSummary, IsValid); + return this->operator bool(); +} +SBTypeSummary::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeSummary, operator bool); return m_opaque_sp.get() != NULL; } diff --git a/lldb/source/API/SBTypeSynthetic.cpp b/lldb/source/API/SBTypeSynthetic.cpp index 1c6625e8dd7..555820384ac 100644 --- a/lldb/source/API/SBTypeSynthetic.cpp +++ b/lldb/source/API/SBTypeSynthetic.cpp @@ -57,6 +57,10 @@ SBTypeSynthetic::~SBTypeSynthetic() {} bool SBTypeSynthetic::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeSynthetic, IsValid); + return this->operator bool(); +} +SBTypeSynthetic::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBTypeSynthetic, operator bool); return m_opaque_sp.get() != NULL; } diff --git a/lldb/source/API/SBUnixSignals.cpp b/lldb/source/API/SBUnixSignals.cpp index 625069a3ff1..26a5be9c5eb 100644 --- a/lldb/source/API/SBUnixSignals.cpp +++ b/lldb/source/API/SBUnixSignals.cpp @@ -59,6 +59,10 @@ void SBUnixSignals::Clear() { bool SBUnixSignals::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBUnixSignals, IsValid); + return this->operator bool(); +} +SBUnixSignals::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBUnixSignals, operator bool); return static_cast<bool>(GetSP()); } diff --git a/lldb/source/API/SBValue.cpp b/lldb/source/API/SBValue.cpp index 1990907ef32..6ed526c9ec0 100644 --- a/lldb/source/API/SBValue.cpp +++ b/lldb/source/API/SBValue.cpp @@ -243,6 +243,10 @@ SBValue::~SBValue() {} bool SBValue::IsValid() { LLDB_RECORD_METHOD_NO_ARGS(bool, SBValue, IsValid); + return this->operator bool(); +} +SBValue::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBValue, operator bool); // If this function ever changes to anything that does more than just check // if the opaque shared pointer is non NULL, then we need to update all "if diff --git a/lldb/source/API/SBValueList.cpp b/lldb/source/API/SBValueList.cpp index 914da817a53..db4ec84861b 100644 --- a/lldb/source/API/SBValueList.cpp +++ b/lldb/source/API/SBValueList.cpp @@ -87,6 +87,10 @@ SBValueList::~SBValueList() {} bool SBValueList::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBValueList, IsValid); + return this->operator bool(); +} +SBValueList::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBValueList, operator bool); return (m_opaque_up != NULL); } diff --git a/lldb/source/API/SBVariablesOptions.cpp b/lldb/source/API/SBVariablesOptions.cpp index e278cb01ce7..52feb016bcd 100644 --- a/lldb/source/API/SBVariablesOptions.cpp +++ b/lldb/source/API/SBVariablesOptions.cpp @@ -106,6 +106,10 @@ SBVariablesOptions::~SBVariablesOptions() = default; bool SBVariablesOptions::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBVariablesOptions, IsValid); + return this->operator bool(); +} +SBVariablesOptions::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBVariablesOptions, operator bool); return m_opaque_up != nullptr; } diff --git a/lldb/source/API/SBWatchpoint.cpp b/lldb/source/API/SBWatchpoint.cpp index 7e049fd4dd5..11113ae49f8 100644 --- a/lldb/source/API/SBWatchpoint.cpp +++ b/lldb/source/API/SBWatchpoint.cpp @@ -62,6 +62,10 @@ watch_id_t SBWatchpoint::GetID() { bool SBWatchpoint::IsValid() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBWatchpoint, IsValid); + return this->operator bool(); +} +SBWatchpoint::operator bool() const { + LLDB_RECORD_METHOD_CONST_NO_ARGS(bool, SBWatchpoint, operator bool); return bool(m_opaque_wp.lock()); } |