[PyQt] How to avoid duplication in SIP?
Shaheed Haque
srhaque at theiet.org
Sun Apr 9 16:05:47 BST 2017
A recurring problem with my SIP generator efforts is the need to deal
with duplicate SIP code. So far, I've been able to use the SIP concept
of a "feature" to deal with various manifestations of this, but I have
now hit one that has me stumped:
- Module A has a mapped type MTA (e.g. QPair<init, int>)
- Module B imports A, but also needs a mapped type for QPair<int, int>.
when the generator runs for module B, it is not aware of MTA, so it
ends up emitting MTB for its QPair<init, int>. Of course, when I run
SIP on B, MTA and MTB collide.
Is there something already in SIP I could use to say "this duplicate
is fine"? If not, would it be possible to add support for the SIP
equivalent of a define guard, along the lines "#define
feature"/"#ifdef feature"?
I realise that by generating the SIP code, I'm in a minority of SIP
users, but such a feature would also significantly simplify certain
other scenarios that affect me too.
Thanks, Shaheed
More information about the PyQt
mailing list