diff --git a/cmd/genbindings/exceptions.go b/cmd/genbindings/exceptions.go index ee29d357..d63f6fa9 100644 --- a/cmd/genbindings/exceptions.go +++ b/cmd/genbindings/exceptions.go @@ -71,6 +71,9 @@ func CheckComplexity(p CppParameter) error { if p.QPairOf() { return ErrTooComplex // e.g. QGradientStop } + if p.QSetOf() { + return ErrTooComplex // e.g. QStateMachine + } if t, ok := p.QListOf(); ok { if err := CheckComplexity(t); err != nil { // e.g. QGradientStops is a QVector<> (OK) of QGradientStop (not OK) return err diff --git a/cmd/genbindings/intermediate.go b/cmd/genbindings/intermediate.go index 2dfd2689..234504a8 100644 --- a/cmd/genbindings/intermediate.go +++ b/cmd/genbindings/intermediate.go @@ -39,6 +39,10 @@ func (p CppParameter) QPairOf() bool { return strings.HasPrefix(p.ParameterType, `QPair<`) // TODO support this } +func (p CppParameter) QSetOf() bool { + return strings.HasPrefix(p.ParameterType, `QSet<`) // TODO support this +} + func (p CppParameter) IntType() bool { switch p.ParameterType { case "int", "unsigned int", "uint",