bulbazord updated this revision to Diff 495695.
bulbazord added a comment.
Herald added a reviewer: jdoerfert.
Herald added subscribers: Michael137, sstefan1.

First pass at a complete implementation. Actions taken:

- Added swig flags to ignore swig warnings indicating that swig is ignoring 
certain operator overloads (e.g. operator=)
- Broke SB${Class}.i files into SB${Class}Docstrings.i (containing the 
docstrings) and SB${Class}Extensions.i (containing additional python 
functionality)
- Deleted all SB${Class}.i files.
- Moved necessary typemaps into python-typemaps.swig.
- Audited all SB class headers and add preprocessor macros to ignore any 
functions and methods that were not implemented in the SB${Class}.i files.
  - This is just to make this change more "atomic" (i.e. not adding any new 
functionality)

I can imagine that folks will have some opinions about this patch. It is pretty 
large, contains a few
"warts" (some of the swig header guards aren't very pretty), and there are 
probably better ways to do some things.
I'd therefore like to start getting feedback on this patch now that it works on 
my machine.
I've run the test suite on my macOS machine which I'm sure won't run every 
single test in every single configuration that
get run on the bots so I expect there to be some amount of churn even if this 
is approved and lands.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D142926/new/

https://reviews.llvm.org/D142926

Files:
  lldb/bindings/CMakeLists.txt
  lldb/bindings/interface/SBAddress.i
  lldb/bindings/interface/SBAddressDocstrings.i
  lldb/bindings/interface/SBAddressExtensions.i
  lldb/bindings/interface/SBAttachInfo.i
  lldb/bindings/interface/SBAttachInfoDocstrings.i
  lldb/bindings/interface/SBBlock.i
  lldb/bindings/interface/SBBlockDocstrings.i
  lldb/bindings/interface/SBBlockExtensions.i
  lldb/bindings/interface/SBBreakpoint.i
  lldb/bindings/interface/SBBreakpointDocstrings.i
  lldb/bindings/interface/SBBreakpointExtensions.i
  lldb/bindings/interface/SBBreakpointLocation.i
  lldb/bindings/interface/SBBreakpointLocationDocstrings.i
  lldb/bindings/interface/SBBreakpointLocationExtensions.i
  lldb/bindings/interface/SBBreakpointName.i
  lldb/bindings/interface/SBBreakpointNameDocstrings.i
  lldb/bindings/interface/SBBreakpointNameExtensions.i
  lldb/bindings/interface/SBBroadcaster.i
  lldb/bindings/interface/SBBroadcasterDocstrings.i
  lldb/bindings/interface/SBCommandInterpreter.i
  lldb/bindings/interface/SBCommandInterpreterDocstrings.i
  lldb/bindings/interface/SBCommandInterpreterRunOptions.i
  lldb/bindings/interface/SBCommandInterpreterRunOptionsDocstrings.i
  lldb/bindings/interface/SBCommandReturnObject.i
  lldb/bindings/interface/SBCommandReturnObjectDocstrings.i
  lldb/bindings/interface/SBCommandReturnObjectExtensions.i
  lldb/bindings/interface/SBCommunication.i
  lldb/bindings/interface/SBCommunicationDocstrings.i
  lldb/bindings/interface/SBCompileUnit.i
  lldb/bindings/interface/SBCompileUnitDocstrings.i
  lldb/bindings/interface/SBCompileUnitExtensions.i
  lldb/bindings/interface/SBData.i
  lldb/bindings/interface/SBDataDocstrings.i
  lldb/bindings/interface/SBDataExtensions.i
  lldb/bindings/interface/SBDebugger.i
  lldb/bindings/interface/SBDebuggerDocstrings.i
  lldb/bindings/interface/SBDebuggerExtensions.i
  lldb/bindings/interface/SBDeclaration.i
  lldb/bindings/interface/SBDeclarationDocstrings.i
  lldb/bindings/interface/SBDeclarationExtensions.i
  lldb/bindings/interface/SBEnvironment.i
  lldb/bindings/interface/SBEnvironmentDocstrings.i
  lldb/bindings/interface/SBError.i
  lldb/bindings/interface/SBErrorDocstrings.i
  lldb/bindings/interface/SBErrorExtensions.i
  lldb/bindings/interface/SBEvent.i
  lldb/bindings/interface/SBEventDocstrings.i
  lldb/bindings/interface/SBExecutionContext.i
  lldb/bindings/interface/SBExecutionContextDocstrings.i
  lldb/bindings/interface/SBExecutionContextExtensions.i
  lldb/bindings/interface/SBExpressionOptions.i
  lldb/bindings/interface/SBExpressionOptionsDocstrings.i
  lldb/bindings/interface/SBFile.i
  lldb/bindings/interface/SBFileDocstrings.i
  lldb/bindings/interface/SBFileExtensions.i
  lldb/bindings/interface/SBFileSpec.i
  lldb/bindings/interface/SBFileSpecDocstrings.i
  lldb/bindings/interface/SBFileSpecExtensions.i
  lldb/bindings/interface/SBFileSpecList.i
  lldb/bindings/interface/SBFileSpecListDocstrings.i
  lldb/bindings/interface/SBFrame.i
  lldb/bindings/interface/SBFrameDocstrings.i
  lldb/bindings/interface/SBFrameExtensions.i
  lldb/bindings/interface/SBFunction.i
  lldb/bindings/interface/SBFunctionDocstrings.i
  lldb/bindings/interface/SBFunctionExtensions.i
  lldb/bindings/interface/SBHostOS.i
  lldb/bindings/interface/SBHostOSDocstrings.i
  lldb/bindings/interface/SBInstruction.i
  lldb/bindings/interface/SBInstructionDocstrings.i
  lldb/bindings/interface/SBInstructionExtensions.i
  lldb/bindings/interface/SBInstructionList.i
  lldb/bindings/interface/SBInstructionListDocstrings.i
  lldb/bindings/interface/SBInstructionListExtensions.i
  lldb/bindings/interface/SBLanguageRuntime.i
  lldb/bindings/interface/SBLanguageRuntimeDocstrings.i
  lldb/bindings/interface/SBLaunchInfo.i
  lldb/bindings/interface/SBLaunchInfoDocstrings.i
  lldb/bindings/interface/SBLineEntry.i
  lldb/bindings/interface/SBLineEntryDocstrings.i
  lldb/bindings/interface/SBLineEntryExtensions.i
  lldb/bindings/interface/SBListener.i
  lldb/bindings/interface/SBListenerDocstrings.i
  lldb/bindings/interface/SBMemoryRegionInfo.i
  lldb/bindings/interface/SBMemoryRegionInfoDocstrings.i
  lldb/bindings/interface/SBMemoryRegionInfoExtensions.i
  lldb/bindings/interface/SBMemoryRegionInfoList.i
  lldb/bindings/interface/SBMemoryRegionInfoListDocstrings.i
  lldb/bindings/interface/SBModule.i
  lldb/bindings/interface/SBModuleDocstrings.i
  lldb/bindings/interface/SBModuleExtensions.i
  lldb/bindings/interface/SBModuleSpec.i
  lldb/bindings/interface/SBModuleSpecDocstrings.i
  lldb/bindings/interface/SBModuleSpecExtensions.i
  lldb/bindings/interface/SBPlatform.i
  lldb/bindings/interface/SBPlatformDocstrings.i
  lldb/bindings/interface/SBProcess.i
  lldb/bindings/interface/SBProcessDocstrings.i
  lldb/bindings/interface/SBProcessExtensions.i
  lldb/bindings/interface/SBProcessInfo.i
  lldb/bindings/interface/SBProcessInfoDocstrings.i
  lldb/bindings/interface/SBQueue.i
  lldb/bindings/interface/SBQueueDocstrings.i
  lldb/bindings/interface/SBQueueItem.i
  lldb/bindings/interface/SBQueueItemDocstrings.i
  lldb/bindings/interface/SBReproducer.i
  lldb/bindings/interface/SBReproducerDocstrings.i
  lldb/bindings/interface/SBSection.i
  lldb/bindings/interface/SBSectionDocstrings.i
  lldb/bindings/interface/SBSectionExtensions.i
  lldb/bindings/interface/SBSourceManager.i
  lldb/bindings/interface/SBSourceManagerDocstrings.i
  lldb/bindings/interface/SBStream.i
  lldb/bindings/interface/SBStreamDocstrings.i
  lldb/bindings/interface/SBStreamExtensions.i
  lldb/bindings/interface/SBStringList.i
  lldb/bindings/interface/SBStringListDocstrings.i
  lldb/bindings/interface/SBStringListExtensions.i
  lldb/bindings/interface/SBStructuredData.i
  lldb/bindings/interface/SBStructuredDataDocstrings.i
  lldb/bindings/interface/SBSymbol.i
  lldb/bindings/interface/SBSymbolContext.i
  lldb/bindings/interface/SBSymbolContextDocstrings.i
  lldb/bindings/interface/SBSymbolContextExtensions.i
  lldb/bindings/interface/SBSymbolContextList.i
  lldb/bindings/interface/SBSymbolContextListDocstrings.i
  lldb/bindings/interface/SBSymbolContextListExtensions.i
  lldb/bindings/interface/SBSymbolDocstrings.i
  lldb/bindings/interface/SBSymbolExtensions.i
  lldb/bindings/interface/SBTarget.i
  lldb/bindings/interface/SBTargetDocstrings.i
  lldb/bindings/interface/SBTargetExtensions.i
  lldb/bindings/interface/SBThread.i
  lldb/bindings/interface/SBThreadCollection.i
  lldb/bindings/interface/SBThreadCollectionDocstrings.i
  lldb/bindings/interface/SBThreadDocstrings.i
  lldb/bindings/interface/SBThreadExtensions.i
  lldb/bindings/interface/SBThreadPlan.i
  lldb/bindings/interface/SBThreadPlanDocstrings.i
  lldb/bindings/interface/SBTrace.i
  lldb/bindings/interface/SBTraceCursor.i
  lldb/bindings/interface/SBTraceCursorDocstrings.i
  lldb/bindings/interface/SBTraceDocstrings.i
  lldb/bindings/interface/SBType.i
  lldb/bindings/interface/SBTypeCategory.i
  lldb/bindings/interface/SBTypeCategoryDocstrings.i
  lldb/bindings/interface/SBTypeCategoryExtensions.i
  lldb/bindings/interface/SBTypeDocstrings.i
  lldb/bindings/interface/SBTypeEnumMember.i
  lldb/bindings/interface/SBTypeEnumMemberDocstrings.i
  lldb/bindings/interface/SBTypeEnumMemberExtensions.i
  lldb/bindings/interface/SBTypeExtensions.i
  lldb/bindings/interface/SBTypeFilter.i
  lldb/bindings/interface/SBTypeFilterDocstrings.i
  lldb/bindings/interface/SBTypeFilterExtensions.i
  lldb/bindings/interface/SBTypeFormat.i
  lldb/bindings/interface/SBTypeFormatDocstrings.i
  lldb/bindings/interface/SBTypeFormatExtensions.i
  lldb/bindings/interface/SBTypeNameSpecifier.i
  lldb/bindings/interface/SBTypeNameSpecifierDocstrings.i
  lldb/bindings/interface/SBTypeNameSpecifierExtensions.i
  lldb/bindings/interface/SBTypeSummary.i
  lldb/bindings/interface/SBTypeSummaryDocstrings.i
  lldb/bindings/interface/SBTypeSummaryExtensions.i
  lldb/bindings/interface/SBTypeSynthetic.i
  lldb/bindings/interface/SBTypeSyntheticDocstrings.i
  lldb/bindings/interface/SBTypeSyntheticExtensions.i
  lldb/bindings/interface/SBUnixSignals.i
  lldb/bindings/interface/SBUnixSignalsDocstrings.i
  lldb/bindings/interface/SBUnixSignalsExtensions.i
  lldb/bindings/interface/SBValue.i
  lldb/bindings/interface/SBValueDocstrings.i
  lldb/bindings/interface/SBValueExtensions.i
  lldb/bindings/interface/SBValueList.i
  lldb/bindings/interface/SBValueListDocstrings.i
  lldb/bindings/interface/SBValueListExtensions.i
  lldb/bindings/interface/SBVariablesOptions.i
  lldb/bindings/interface/SBVariablesOptionsDocstrings.i
  lldb/bindings/interface/SBWatchpoint.i
  lldb/bindings/interface/SBWatchpointDocstrings.i
  lldb/bindings/interface/SBWatchpointExtensions.i
  lldb/bindings/interfaces.swig
  lldb/bindings/macros.swig
  lldb/bindings/python/python-typemaps.swig
  lldb/cmake/modules/LLDBFramework.cmake
  lldb/include/lldb/API/SBAddress.h
  lldb/include/lldb/API/SBAttachInfo.h
  lldb/include/lldb/API/SBBreakpoint.h
  lldb/include/lldb/API/SBBreakpointLocation.h
  lldb/include/lldb/API/SBBreakpointName.h
  lldb/include/lldb/API/SBBroadcaster.h
  lldb/include/lldb/API/SBCommandInterpreter.h
  lldb/include/lldb/API/SBCommandInterpreterRunOptions.h
  lldb/include/lldb/API/SBCommandReturnObject.h
  lldb/include/lldb/API/SBDebugger.h
  lldb/include/lldb/API/SBError.h
  lldb/include/lldb/API/SBEvent.h
  lldb/include/lldb/API/SBExecutionContext.h
  lldb/include/lldb/API/SBExpressionOptions.h
  lldb/include/lldb/API/SBFile.h
  lldb/include/lldb/API/SBFrame.h
  lldb/include/lldb/API/SBInstruction.h
  lldb/include/lldb/API/SBInstructionList.h
  lldb/include/lldb/API/SBLaunchInfo.h
  lldb/include/lldb/API/SBListener.h
  lldb/include/lldb/API/SBModule.h
  lldb/include/lldb/API/SBPlatform.h
  lldb/include/lldb/API/SBProcess.h
  lldb/include/lldb/API/SBQueue.h
  lldb/include/lldb/API/SBReproducer.h
  lldb/include/lldb/API/SBSourceManager.h
  lldb/include/lldb/API/SBStream.h
  lldb/include/lldb/API/SBStringList.h
  lldb/include/lldb/API/SBStructuredData.h
  lldb/include/lldb/API/SBSymbolContext.h
  lldb/include/lldb/API/SBTarget.h
  lldb/include/lldb/API/SBThread.h
  lldb/include/lldb/API/SBThreadPlan.h
  lldb/include/lldb/API/SBTrace.h
  lldb/include/lldb/API/SBType.h
  lldb/include/lldb/API/SBTypeCategory.h
  lldb/include/lldb/API/SBTypeSummary.h
  lldb/include/lldb/API/SBTypeSynthetic.h
  lldb/include/lldb/API/SBValue.h
  lldb/include/lldb/API/SBWatchpoint.h

_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to