Add support for unordered set properties
Change the Python type of `std::unordered_set` properties from `list` to `set`. Parsers only required minor updates and special treatment of the empty set, which can only be represented as `set()` in Python (`{}` is reserved for dictionaries). This will certainly break client code, i.e. ``` MyAlg.ExtraInputs += ['foo'] ``` will have to be updated to ``` MyAlg.ExtraInputs.add('foo') ``` For the moment only `std::unordered_set` is mapped to a Python `set`. Regular `std::set` remains as Python `list` to maintain insertion order.
parent
cd9378e6
No related branches found
No related tags found
Showing
- GaudiConfiguration/python/GaudiConfig2/semantics.py 98 additions, 3 deletionsGaudiConfiguration/python/GaudiConfig2/semantics.py
- GaudiConfiguration/tests/python/__init__.py 9 additions, 1 deletionGaudiConfiguration/tests/python/__init__.py
- GaudiConfiguration/tests/python/test_mapping_semantics.py 6 additions, 0 deletionsGaudiConfiguration/tests/python/test_mapping_semantics.py
- GaudiConfiguration/tests/python/test_sequence_semantics.py 6 additions, 0 deletionsGaudiConfiguration/tests/python/test_sequence_semantics.py
- GaudiConfiguration/tests/python/test_set_semantics.py 111 additions, 0 deletionsGaudiConfiguration/tests/python/test_set_semantics.py
- GaudiExamples/options/ExtendedProperties.opts 4 additions, 0 deletionsGaudiExamples/options/ExtendedProperties.opts
- GaudiExamples/options/ExtendedProperties.py 9 additions, 1 deletionGaudiExamples/options/ExtendedProperties.py
- GaudiExamples/src/ExtendedProperties/ExtendedProperties.cpp 9 additions, 1 deletionGaudiExamples/src/ExtendedProperties/ExtendedProperties.cpp
- GaudiExamples/tests/qmtest/ExtPropValidator.py 3 additions, 1 deletionGaudiExamples/tests/qmtest/ExtPropValidator.py
- GaudiKernel/include/Gaudi/Parsers/Grammars.h 14 additions, 3 deletionsGaudiKernel/include/Gaudi/Parsers/Grammars.h
- GaudiKernel/include/GaudiKernel/ToStream.h 3 additions, 3 deletionsGaudiKernel/include/GaudiKernel/ToStream.h
- GaudiKernel/python/GaudiKernel/PropertyProxy.py 3 additions, 3 deletionsGaudiKernel/python/GaudiKernel/PropertyProxy.py
- GaudiKernel/tests/src/parsers.cpp 36 additions, 1 deletionGaudiKernel/tests/src/parsers.cpp
Loading
Please register or sign in to comment