xref: /llvm-project/lldb/bindings/interface/SBUnixSignalsExtensions.i (revision 6813ef37377e8d8fadf6efe01e1ed80cc53b9c86)
1662548c8SAlex Langford %extend lldb::SBUnixSignals {
2662548c8SAlex Langford #ifdef SWIGPYTHON
3662548c8SAlex Langford     %pythoncode %{
4*6813ef37SMed Ismail Bennani         def __iter__(self):
5*6813ef37SMed Ismail Bennani             '''Iterate over all signals in a lldb.SBUnixSignals object.'''
6*6813ef37SMed Ismail Bennani             return lldb_iter(self, 'GetNumSignals', 'GetSignalAtIndex')
7*6813ef37SMed Ismail Bennani 
8*6813ef37SMed Ismail Bennani         def __len__(self):
9*6813ef37SMed Ismail Bennani             return self.GetNumSignals()
10*6813ef37SMed Ismail Bennani 
11662548c8SAlex Langford         def get_unix_signals_list(self):
12662548c8SAlex Langford             signals = []
13662548c8SAlex Langford             for idx in range(0, self.GetNumSignals()):
14662548c8SAlex Langford                 signals.append(self.GetSignalAtIndex(sig))
15662548c8SAlex Langford             return signals
16662548c8SAlex Langford 
17662548c8SAlex Langford         threads = property(get_unix_signals_list, None, doc='''A read only property that returns a list() of valid signal numbers for this platform.''')
18662548c8SAlex Langford     %}
19662548c8SAlex Langford #endif
20662548c8SAlex Langford }
21