//Auto-generated by /usr/bin/smokegen. DO NOT EDIT.
#include <qtcore_includes.h>
#include <typeinfo>

#include <smoke.h>
#include <qtcore_smoke.h>

class __internal_SmokeClass {};

namespace __smokeqtcore {

class x_QStateMachine : public QStateMachine, public __internal_SmokeClass {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    void x_1(Smoke::Stack x) {
        // virtual const QMetaObject* metaObject() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStateMachine*>(this))) {
            const QMetaObject* xret = ((const x_QStateMachine*)this)->QStateMachine::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QStateMachine*)this)->metaObject();
            x[0].s_class = (void*)xret;
        }
    }
    void x_2(Smoke::Stack x) {
        // virtual void* qt_metacast(const char*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStateMachine*>(this))) {
            void* xret = this->QStateMachine::qt_metacast((const char*)x[1].s_class);
            x[0].s_class = (void*)xret;
        } else {
            void* xret = this->qt_metacast((const char*)x[1].s_class);
            x[0].s_class = (void*)xret;
        }
    }
    static void x_3(Smoke::Stack x) {
        // static QString tr(const char*, const char*)
        QString xret = QStateMachine::tr((const char*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_4(Smoke::Stack x) {
        // static QString trUtf8(const char*, const char*)
        QString xret = QStateMachine::trUtf8((const char*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_5(Smoke::Stack x) {
        // static QString tr(const char*, const char*, int)
        QString xret = QStateMachine::tr((const char*)x[1].s_class,(const char*)x[2].s_class,(int)x[3].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_6(Smoke::Stack x) {
        // static QString trUtf8(const char*, const char*, int)
        QString xret = QStateMachine::trUtf8((const char*)x[1].s_class,(const char*)x[2].s_class,(int)x[3].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_7(Smoke::Stack x) {
        // virtual int qt_metacall(QMetaObject::Call, int, void**)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStateMachine*>(this))) {
            int xret = this->QStateMachine::qt_metacall((QMetaObject::Call)x[1].s_enum,(int)x[2].s_int,(void**)x[3].s_class);
            x[0].s_int = xret;
        } else {
            int xret = this->qt_metacall((QMetaObject::Call)x[1].s_enum,(int)x[2].s_int,(void**)x[3].s_class);
            x[0].s_int = xret;
        }
    }
    static void x_8(Smoke::Stack x) {
        // QStateMachine* QStateMachine(QObject*)
        x_QStateMachine* xret = new x_QStateMachine((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStateMachine(QObject* x1) : QStateMachine(x1) {}
    void x_9(Smoke::Stack x) {
        // void addState(QAbstractState*)
        this->QStateMachine::addState((QAbstractState*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // void removeState(QAbstractState*)
        this->QStateMachine::removeState((QAbstractState*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // QStateMachine::Error error() const
        QStateMachine::Error xret = ((const x_QStateMachine*)this)->QStateMachine::error();
        x[0].s_enum = xret;
    }
    void x_12(Smoke::Stack x) {
        // QString errorString() const
        QString xret = ((const x_QStateMachine*)this)->QStateMachine::errorString();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_13(Smoke::Stack x) {
        // void clearError()
        this->QStateMachine::clearError();
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // bool isRunning() const
        bool xret = ((const x_QStateMachine*)this)->QStateMachine::isRunning();
        x[0].s_bool = xret;
    }
    void x_15(Smoke::Stack x) {
        // bool isAnimated() const
        bool xret = ((const x_QStateMachine*)this)->QStateMachine::isAnimated();
        x[0].s_bool = xret;
    }
    void x_16(Smoke::Stack x) {
        // void setAnimated(bool)
        this->QStateMachine::setAnimated((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // void addDefaultAnimation(QAbstractAnimation*)
        this->QStateMachine::addDefaultAnimation((QAbstractAnimation*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_18(Smoke::Stack x) {
        // QList<QAbstractAnimation*> defaultAnimations() const
        QList<QAbstractAnimation*> xret = ((const x_QStateMachine*)this)->QStateMachine::defaultAnimations();
        x[0].s_class = (void*)new QList<QAbstractAnimation*>(xret);
    }
    void x_19(Smoke::Stack x) {
        // void removeDefaultAnimation(QAbstractAnimation*)
        this->QStateMachine::removeDefaultAnimation((QAbstractAnimation*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_20(Smoke::Stack x) {
        // QStateMachine::RestorePolicy globalRestorePolicy() const
        QStateMachine::RestorePolicy xret = ((const x_QStateMachine*)this)->QStateMachine::globalRestorePolicy();
        x[0].s_enum = xret;
    }
    void x_21(Smoke::Stack x) {
        // void setGlobalRestorePolicy(QStateMachine::RestorePolicy)
        this->QStateMachine::setGlobalRestorePolicy((QStateMachine::RestorePolicy)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_22(Smoke::Stack x) {
        // void postEvent(QEvent*, QStateMachine::EventPriority)
        this->QStateMachine::postEvent((QEvent*)x[1].s_class,(QStateMachine::EventPriority)x[2].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // int postDelayedEvent(QEvent*, int)
        int xret = this->QStateMachine::postDelayedEvent((QEvent*)x[1].s_class,(int)x[2].s_int);
        x[0].s_int = xret;
    }
    void x_24(Smoke::Stack x) {
        // bool cancelDelayedEvent(int)
        bool xret = this->QStateMachine::cancelDelayedEvent((int)x[1].s_int);
        x[0].s_bool = xret;
    }
    void x_25(Smoke::Stack x) {
        // QSet<QAbstractState*> configuration() const
        QSet<QAbstractState*> xret = ((const x_QStateMachine*)this)->QStateMachine::configuration();
        x[0].s_class = (void*)new QSet<QAbstractState*>(xret);
    }
    void x_26(Smoke::Stack x) {
        // bool eventFilter(QObject*, QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStateMachine*>(this))) {
            bool xret = this->QStateMachine::eventFilter((QObject*)x[1].s_class,(QEvent*)x[2].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->eventFilter((QObject*)x[1].s_class,(QEvent*)x[2].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_27(Smoke::Stack x) {
        // void start()
        this->QStateMachine::start();
        (void)x; // noop (for compiler warning)
    }
    void x_28(Smoke::Stack x) {
        // void stop()
        this->QStateMachine::stop();
        (void)x; // noop (for compiler warning)
    }
    void x_29(Smoke::Stack x) {
        // void started()
        this->QStateMachine::started();
        (void)x; // noop (for compiler warning)
    }
    void x_30(Smoke::Stack x) {
        // void stopped()
        this->QStateMachine::stopped();
        (void)x; // noop (for compiler warning)
    }
    void x_31(Smoke::Stack x) {
        // void onEntry(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStateMachine*>(this))) {
            this->QStateMachine::onEntry((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->onEntry((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_32(Smoke::Stack x) {
        // void onExit(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStateMachine*>(this))) {
            this->QStateMachine::onExit((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->onExit((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_33(Smoke::Stack x) {
        // virtual void beginSelectTransitions(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStateMachine*>(this))) {
            this->QStateMachine::beginSelectTransitions((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->beginSelectTransitions((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_34(Smoke::Stack x) {
        // virtual void endSelectTransitions(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStateMachine*>(this))) {
            this->QStateMachine::endSelectTransitions((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->endSelectTransitions((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_35(Smoke::Stack x) {
        // virtual void beginMicrostep(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStateMachine*>(this))) {
            this->QStateMachine::beginMicrostep((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->beginMicrostep((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_36(Smoke::Stack x) {
        // virtual void endMicrostep(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStateMachine*>(this))) {
            this->QStateMachine::endMicrostep((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->endMicrostep((QEvent*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_37(Smoke::Stack x) {
        // bool event(QEvent*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QStateMachine*>(this))) {
            bool xret = this->QStateMachine::event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->event((QEvent*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    static void x_38(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QStateMachine::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_39(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QStateMachine::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_40(Smoke::Stack x) {
        // QStateMachine* QStateMachine()
        x_QStateMachine* xret = new x_QStateMachine((QObject*)0);
        x[0].s_class = (void*)xret;
    }
    void x_41(Smoke::Stack x) {
        // void postEvent(QEvent*)
        this->QStateMachine::postEvent((QEvent*)x[1].s_class,(QStateMachine::EventPriority)QStateMachine::NormalPriority);
        (void)x; // noop (for compiler warning)
    }
    static void x_42(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QStateMachine::staticMetaObject;
    }
    static void x_43(Smoke::Stack x) {
        x[0].s_enum = (long)QStateMachine::NormalPriority;
    }
    static void x_44(Smoke::Stack x) {
        x[0].s_enum = (long)QStateMachine::HighPriority;
    }
    static void x_45(Smoke::Stack x) {
        x[0].s_enum = (long)QStateMachine::DontRestoreProperties;
    }
    static void x_46(Smoke::Stack x) {
        x[0].s_enum = (long)QStateMachine::RestoreProperties;
    }
    static void x_47(Smoke::Stack x) {
        x[0].s_enum = (long)QStateMachine::NoError;
    }
    static void x_48(Smoke::Stack x) {
        x[0].s_enum = (long)QStateMachine::NoInitialStateError;
    }
    static void x_49(Smoke::Stack x) {
        x[0].s_enum = (long)QStateMachine::NoDefaultStateInHistoryStateError;
    }
    static void x_50(Smoke::Stack x) {
        x[0].s_enum = (long)QStateMachine::NoCommonAncestorForTransitionError;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(4701, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QStateMachine::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4702, (void*)this, x)) return (void*)x[0].s_class;
        return this->QStateMachine::qt_metacast(x1);
    }
    virtual int qt_metacall(QMetaObject::Call x1, int x2, void** x3) {
        Smoke::StackItem x[4];
        x[1].s_enum = x1;
        x[2].s_int = x2;
        x[3].s_class = (void*)x3;
        if (this->_binding->callMethod(4707, (void*)this, x)) return (int)x[0].s_int;
        return this->QStateMachine::qt_metacall(x1, x2, x3);
    }
    virtual void beginSelectTransitions(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4733, (void*)this, x)) return;
        this->QStateMachine::beginSelectTransitions(x1);
    }
    virtual void endSelectTransitions(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4734, (void*)this, x)) return;
        this->QStateMachine::endSelectTransitions(x1);
    }
    virtual void beginMicrostep(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4735, (void*)this, x)) return;
        this->QStateMachine::beginMicrostep(x1);
    }
    virtual void endMicrostep(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4736, (void*)this, x)) return;
        this->QStateMachine::endMicrostep(x1);
    }
    virtual void onEntry(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4731, (void*)this, x)) return;
        this->QStateMachine::onEntry(x1);
    }
    virtual void onExit(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4732, (void*)this, x)) return;
        this->QStateMachine::onExit(x1);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4737, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QStateMachine::event(x1);
    }
    virtual bool eventFilter(QObject* x1, QEvent* x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(4726, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QStateMachine::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3841, (void*)this, x)) return;
        this->QObject::timerEvent(x1);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3842, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3843, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3844, (void*)this, x)) return;
        this->QObject::connectNotify(x1);
    }
    virtual void disconnectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3845, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 308: //QStateMachine::EventPriority
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStateMachine::EventPriority;
                    break;
                case Smoke::EnumDelete:
                    delete (QStateMachine::EventPriority*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStateMachine::EventPriority*)xdata = (QStateMachine::EventPriority)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStateMachine::EventPriority*)xdata;
                    break;
            }
            break;
        case 309: //QStateMachine::RestorePolicy
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStateMachine::RestorePolicy;
                    break;
                case Smoke::EnumDelete:
                    delete (QStateMachine::RestorePolicy*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStateMachine::RestorePolicy*)xdata = (QStateMachine::RestorePolicy)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStateMachine::RestorePolicy*)xdata;
                    break;
            }
            break;
        case 307: //QStateMachine::Error
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QStateMachine::Error;
                    break;
                case Smoke::EnumDelete:
                    delete (QStateMachine::Error*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QStateMachine::Error*)xdata = (QStateMachine::Error)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QStateMachine::Error*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QStateMachine() { this->_binding->deleted(111, (void*)this); }
};
void xenum_QStateMachine(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QStateMachine::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QStateMachine(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStateMachine *xself = (x_QStateMachine*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: xself->x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: x_QStateMachine::x_3(args);	break;
        case 4: x_QStateMachine::x_4(args);	break;
        case 5: x_QStateMachine::x_5(args);	break;
        case 6: x_QStateMachine::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QStateMachine::x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: xself->x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: xself->x_30(args);	break;
        case 31: xself->x_31(args);	break;
        case 32: xself->x_32(args);	break;
        case 33: xself->x_33(args);	break;
        case 34: xself->x_34(args);	break;
        case 35: xself->x_35(args);	break;
        case 36: xself->x_36(args);	break;
        case 37: xself->x_37(args);	break;
        case 38: x_QStateMachine::x_38(args);	break;
        case 39: x_QStateMachine::x_39(args);	break;
        case 40: x_QStateMachine::x_40(args);	break;
        case 41: xself->x_41(args);	break;
        case 42: x_QStateMachine::x_42(args);	break;
        case 43: x_QStateMachine::x_43(args);	break;
        case 44: x_QStateMachine::x_44(args);	break;
        case 45: x_QStateMachine::x_45(args);	break;
        case 46: x_QStateMachine::x_46(args);	break;
        case 47: x_QStateMachine::x_47(args);	break;
        case 48: x_QStateMachine::x_48(args);	break;
        case 49: x_QStateMachine::x_49(args);	break;
        case 50: x_QStateMachine::x_50(args);	break;
        case 51: delete (QStateMachine*)xself;	break;
    }
}
class x_QStringMatcher : public QStringMatcher {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // QStringMatcher* QStringMatcher()
        x_QStringMatcher* xret = new x_QStringMatcher();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStringMatcher() : QStringMatcher() {}
    static void x_2(Smoke::Stack x) {
        // QStringMatcher* QStringMatcher(const QString&, Qt::CaseSensitivity)
        x_QStringMatcher* xret = new x_QStringMatcher(*(const QString*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStringMatcher(const QString& x1, Qt::CaseSensitivity x2) : QStringMatcher(x1, x2) {}
    static void x_3(Smoke::Stack x) {
        // QStringMatcher* QStringMatcher(const QChar*, int, Qt::CaseSensitivity)
        x_QStringMatcher* xret = new x_QStringMatcher((const QChar*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)x[3].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStringMatcher(const QChar* x1, int x2, Qt::CaseSensitivity x3) : QStringMatcher(x1, x2, x3) {}
    static void x_4(Smoke::Stack x) {
        // QStringMatcher* QStringMatcher(const QStringMatcher&)
        x_QStringMatcher* xret = new x_QStringMatcher(*(const QStringMatcher*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStringMatcher(const QStringMatcher& x1) : QStringMatcher(x1) {}
    void x_5(Smoke::Stack x) {
        // QStringMatcher& operator=(const QStringMatcher&)
        QStringMatcher& xret = this->QStringMatcher::operator=(*(const QStringMatcher*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_6(Smoke::Stack x) {
        // void setPattern(const QString&)
        this->QStringMatcher::setPattern(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_7(Smoke::Stack x) {
        // void setCaseSensitivity(Qt::CaseSensitivity)
        this->QStringMatcher::setCaseSensitivity((Qt::CaseSensitivity)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_8(Smoke::Stack x) {
        // int indexIn(const QString&, int) const
        int xret = ((const x_QStringMatcher*)this)->QStringMatcher::indexIn(*(const QString*)x[1].s_class,(int)x[2].s_int);
        x[0].s_int = xret;
    }
    void x_9(Smoke::Stack x) {
        // int indexIn(const QChar*, int, int) const
        int xret = ((const x_QStringMatcher*)this)->QStringMatcher::indexIn((const QChar*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int);
        x[0].s_int = xret;
    }
    void x_10(Smoke::Stack x) {
        // QString pattern() const
        QString xret = ((const x_QStringMatcher*)this)->QStringMatcher::pattern();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_11(Smoke::Stack x) {
        // Qt::CaseSensitivity caseSensitivity() const
        Qt::CaseSensitivity xret = ((const x_QStringMatcher*)this)->QStringMatcher::caseSensitivity();
        x[0].s_enum = xret;
    }
    static void x_12(Smoke::Stack x) {
        // QStringMatcher* QStringMatcher(const QString&)
        x_QStringMatcher* xret = new x_QStringMatcher(*(const QString*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_class = (void*)xret;
    }
    static void x_13(Smoke::Stack x) {
        // QStringMatcher* QStringMatcher(const QChar*, int)
        x_QStringMatcher* xret = new x_QStringMatcher((const QChar*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_class = (void*)xret;
    }
    void x_14(Smoke::Stack x) {
        // int indexIn(const QString&) const
        int xret = ((const x_QStringMatcher*)this)->QStringMatcher::indexIn(*(const QString*)x[1].s_class,(int)0);
        x[0].s_int = xret;
    }
    void x_15(Smoke::Stack x) {
        // int indexIn(const QChar*, int) const
        int xret = ((const x_QStringMatcher*)this)->QStringMatcher::indexIn((const QChar*)x[1].s_class,(int)x[2].s_int,(int)0);
        x[0].s_int = xret;
    }
    ~x_QStringMatcher() { this->_binding->deleted(113, (void*)this); }
};
void xcall_QStringMatcher(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStringMatcher *xself = (x_QStringMatcher*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStringMatcher::x_1(args);	break;
        case 2: x_QStringMatcher::x_2(args);	break;
        case 3: x_QStringMatcher::x_3(args);	break;
        case 4: x_QStringMatcher::x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: x_QStringMatcher::x_12(args);	break;
        case 13: x_QStringMatcher::x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: delete (QStringMatcher*)xself;	break;
    }
}
class x_QStringRef : public QStringRef {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // QStringRef* QStringRef()
        x_QStringRef* xret = new x_QStringRef();
        x[0].s_class = (void*)xret;
    }
    explicit x_QStringRef() : QStringRef() {}
    static void x_2(Smoke::Stack x) {
        // QStringRef* QStringRef(const QString*, int, int)
        x_QStringRef* xret = new x_QStringRef((const QString*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStringRef(const QString* x1, int x2, int x3) : QStringRef(x1, x2, x3) {}
    static void x_3(Smoke::Stack x) {
        // QStringRef* QStringRef(const QString*)
        x_QStringRef* xret = new x_QStringRef((const QString*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStringRef(const QString* x1) : QStringRef(x1) {}
    static void x_4(Smoke::Stack x) {
        // QStringRef* QStringRef(const QStringRef&)
        x_QStringRef* xret = new x_QStringRef(*(const QStringRef*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QStringRef(const QStringRef& x1) : QStringRef(x1) {}
    void x_5(Smoke::Stack x) {
        // const QString* string() const
        const QString* xret = ((const x_QStringRef*)this)->QStringRef::string();
        x[0].s_class = (void*)xret;
    }
    void x_6(Smoke::Stack x) {
        // int position() const
        int xret = ((const x_QStringRef*)this)->QStringRef::position();
        x[0].s_int = xret;
    }
    void x_7(Smoke::Stack x) {
        // int size() const
        int xret = ((const x_QStringRef*)this)->QStringRef::size();
        x[0].s_int = xret;
    }
    void x_8(Smoke::Stack x) {
        // int count() const
        int xret = ((const x_QStringRef*)this)->QStringRef::count();
        x[0].s_int = xret;
    }
    void x_9(Smoke::Stack x) {
        // int length() const
        int xret = ((const x_QStringRef*)this)->QStringRef::length();
        x[0].s_int = xret;
    }
    void x_10(Smoke::Stack x) {
        // QStringRef& operator=(const QStringRef&)
        QStringRef& xret = this->QStringRef::operator=(*(const QStringRef*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_11(Smoke::Stack x) {
        // int indexOf(const QString&, int, Qt::CaseSensitivity) const
        int xret = ((const x_QStringRef*)this)->QStringRef::indexOf(*(const QString*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)x[3].s_enum);
        x[0].s_int = xret;
    }
    void x_12(Smoke::Stack x) {
        // int indexOf(QChar, int, Qt::CaseSensitivity) const
        int xret = ((const x_QStringRef*)this)->QStringRef::indexOf(*(QChar*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)x[3].s_enum);
        x[0].s_int = xret;
    }
    void x_13(Smoke::Stack x) {
        // int indexOf(QLatin1String, int, Qt::CaseSensitivity) const
        int xret = ((const x_QStringRef*)this)->QStringRef::indexOf(*(QLatin1String*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)x[3].s_enum);
        x[0].s_int = xret;
    }
    void x_14(Smoke::Stack x) {
        // int indexOf(const QStringRef&, int, Qt::CaseSensitivity) const
        int xret = ((const x_QStringRef*)this)->QStringRef::indexOf(*(const QStringRef*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)x[3].s_enum);
        x[0].s_int = xret;
    }
    void x_15(Smoke::Stack x) {
        // int lastIndexOf(const QString&, int, Qt::CaseSensitivity) const
        int xret = ((const x_QStringRef*)this)->QStringRef::lastIndexOf(*(const QString*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)x[3].s_enum);
        x[0].s_int = xret;
    }
    void x_16(Smoke::Stack x) {
        // int lastIndexOf(QChar, int, Qt::CaseSensitivity) const
        int xret = ((const x_QStringRef*)this)->QStringRef::lastIndexOf(*(QChar*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)x[3].s_enum);
        x[0].s_int = xret;
    }
    void x_17(Smoke::Stack x) {
        // int lastIndexOf(QLatin1String, int, Qt::CaseSensitivity) const
        int xret = ((const x_QStringRef*)this)->QStringRef::lastIndexOf(*(QLatin1String*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)x[3].s_enum);
        x[0].s_int = xret;
    }
    void x_18(Smoke::Stack x) {
        // int lastIndexOf(const QStringRef&, int, Qt::CaseSensitivity) const
        int xret = ((const x_QStringRef*)this)->QStringRef::lastIndexOf(*(const QStringRef*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)x[3].s_enum);
        x[0].s_int = xret;
    }
    void x_19(Smoke::Stack x) {
        // QBool contains(const QString&, Qt::CaseSensitivity) const
        QBool xret = ((const x_QStringRef*)this)->QStringRef::contains(*(const QString*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_class = (void*)new QBool(xret);
    }
    void x_20(Smoke::Stack x) {
        // QBool contains(QChar, Qt::CaseSensitivity) const
        QBool xret = ((const x_QStringRef*)this)->QStringRef::contains(*(QChar*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_class = (void*)new QBool(xret);
    }
    void x_21(Smoke::Stack x) {
        // QBool contains(QLatin1String, Qt::CaseSensitivity) const
        QBool xret = ((const x_QStringRef*)this)->QStringRef::contains(*(QLatin1String*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_class = (void*)new QBool(xret);
    }
    void x_22(Smoke::Stack x) {
        // QBool contains(const QStringRef&, Qt::CaseSensitivity) const
        QBool xret = ((const x_QStringRef*)this)->QStringRef::contains(*(const QStringRef*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_class = (void*)new QBool(xret);
    }
    void x_23(Smoke::Stack x) {
        // int count(const QString&, Qt::CaseSensitivity) const
        int xret = ((const x_QStringRef*)this)->QStringRef::count(*(const QString*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_int = xret;
    }
    void x_24(Smoke::Stack x) {
        // int count(QChar, Qt::CaseSensitivity) const
        int xret = ((const x_QStringRef*)this)->QStringRef::count(*(QChar*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_int = xret;
    }
    void x_25(Smoke::Stack x) {
        // int count(const QStringRef&, Qt::CaseSensitivity) const
        int xret = ((const x_QStringRef*)this)->QStringRef::count(*(const QStringRef*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_int = xret;
    }
    void x_26(Smoke::Stack x) {
        // bool startsWith(const QString&, Qt::CaseSensitivity) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::startsWith(*(const QString*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_bool = xret;
    }
    void x_27(Smoke::Stack x) {
        // bool startsWith(QLatin1String, Qt::CaseSensitivity) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::startsWith(*(QLatin1String*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_bool = xret;
    }
    void x_28(Smoke::Stack x) {
        // bool startsWith(QChar, Qt::CaseSensitivity) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::startsWith(*(QChar*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_bool = xret;
    }
    void x_29(Smoke::Stack x) {
        // bool startsWith(const QStringRef&, Qt::CaseSensitivity) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::startsWith(*(const QStringRef*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_bool = xret;
    }
    void x_30(Smoke::Stack x) {
        // bool endsWith(const QString&, Qt::CaseSensitivity) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::endsWith(*(const QString*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_bool = xret;
    }
    void x_31(Smoke::Stack x) {
        // bool endsWith(QLatin1String, Qt::CaseSensitivity) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::endsWith(*(QLatin1String*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_bool = xret;
    }
    void x_32(Smoke::Stack x) {
        // bool endsWith(QChar, Qt::CaseSensitivity) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::endsWith(*(QChar*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_bool = xret;
    }
    void x_33(Smoke::Stack x) {
        // bool endsWith(const QStringRef&, Qt::CaseSensitivity) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::endsWith(*(const QStringRef*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_bool = xret;
    }
    void x_34(Smoke::Stack x) {
        // QStringRef& operator=(const QString*)
        QStringRef& xret = this->QStringRef::operator=((const QString*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_35(Smoke::Stack x) {
        // const QChar* unicode() const
        const QChar* xret = ((const x_QStringRef*)this)->QStringRef::unicode();
        x[0].s_class = (void*)xret;
    }
    void x_36(Smoke::Stack x) {
        // const QChar* data() const
        const QChar* xret = ((const x_QStringRef*)this)->QStringRef::data();
        x[0].s_class = (void*)xret;
    }
    void x_37(Smoke::Stack x) {
        // const QChar* constData() const
        const QChar* xret = ((const x_QStringRef*)this)->QStringRef::constData();
        x[0].s_class = (void*)xret;
    }
    void x_38(Smoke::Stack x) {
        // QByteArray toAscii() const
        QByteArray xret = ((const x_QStringRef*)this)->QStringRef::toAscii();
        x[0].s_class = (void*)new QByteArray(xret);
    }
    void x_39(Smoke::Stack x) {
        // QByteArray toLatin1() const
        QByteArray xret = ((const x_QStringRef*)this)->QStringRef::toLatin1();
        x[0].s_class = (void*)new QByteArray(xret);
    }
    void x_40(Smoke::Stack x) {
        // QByteArray toUtf8() const
        QByteArray xret = ((const x_QStringRef*)this)->QStringRef::toUtf8();
        x[0].s_class = (void*)new QByteArray(xret);
    }
    void x_41(Smoke::Stack x) {
        // QByteArray toLocal8Bit() const
        QByteArray xret = ((const x_QStringRef*)this)->QStringRef::toLocal8Bit();
        x[0].s_class = (void*)new QByteArray(xret);
    }
    void x_42(Smoke::Stack x) {
        // QVector<unsigned int> toUcs4() const
        QVector<unsigned int> xret = ((const x_QStringRef*)this)->QStringRef::toUcs4();
        x[0].s_class = (void*)new QVector<unsigned int>(xret);
    }
    void x_43(Smoke::Stack x) {
        // void clear()
        this->QStringRef::clear();
        (void)x; // noop (for compiler warning)
    }
    void x_44(Smoke::Stack x) {
        // QString toString() const
        QString xret = ((const x_QStringRef*)this)->QStringRef::toString();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_45(Smoke::Stack x) {
        // bool isEmpty() const
        bool xret = ((const x_QStringRef*)this)->QStringRef::isEmpty();
        x[0].s_bool = xret;
    }
    void x_46(Smoke::Stack x) {
        // bool isNull() const
        bool xret = ((const x_QStringRef*)this)->QStringRef::isNull();
        x[0].s_bool = xret;
    }
    void x_47(Smoke::Stack x) {
        // QStringRef appendTo(QString*) const
        QStringRef xret = ((const x_QStringRef*)this)->QStringRef::appendTo((QString*)x[1].s_class);
        x[0].s_class = (void*)new QStringRef(xret);
    }
    void x_48(Smoke::Stack x) {
        // const QChar at(int) const
        const QChar xret = ((const x_QStringRef*)this)->QStringRef::at((int)x[1].s_int);
        x[0].s_class = (void*)new const QChar(xret);
    }
    void x_49(Smoke::Stack x) {
        // int compare(const QString&, Qt::CaseSensitivity) const
        int xret = ((const x_QStringRef*)this)->QStringRef::compare(*(const QString*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_int = xret;
    }
    void x_50(Smoke::Stack x) {
        // int compare(const QStringRef&, Qt::CaseSensitivity) const
        int xret = ((const x_QStringRef*)this)->QStringRef::compare(*(const QStringRef*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_int = xret;
    }
    void x_51(Smoke::Stack x) {
        // int compare(QLatin1String, Qt::CaseSensitivity) const
        int xret = ((const x_QStringRef*)this)->QStringRef::compare(*(QLatin1String*)x[1].s_class,(Qt::CaseSensitivity)x[2].s_enum);
        x[0].s_int = xret;
    }
    static void x_52(Smoke::Stack x) {
        // static int compare(const QStringRef&, const QString&, Qt::CaseSensitivity)
        int xret = QStringRef::compare(*(const QStringRef*)x[1].s_class,*(const QString*)x[2].s_class,(Qt::CaseSensitivity)x[3].s_enum);
        x[0].s_int = xret;
    }
    static void x_53(Smoke::Stack x) {
        // static int compare(const QStringRef&, const QStringRef&, Qt::CaseSensitivity)
        int xret = QStringRef::compare(*(const QStringRef*)x[1].s_class,*(const QStringRef*)x[2].s_class,(Qt::CaseSensitivity)x[3].s_enum);
        x[0].s_int = xret;
    }
    static void x_54(Smoke::Stack x) {
        // static int compare(const QStringRef&, QLatin1String, Qt::CaseSensitivity)
        int xret = QStringRef::compare(*(const QStringRef*)x[1].s_class,*(QLatin1String*)x[2].s_class,(Qt::CaseSensitivity)x[3].s_enum);
        x[0].s_int = xret;
    }
    void x_55(Smoke::Stack x) {
        // int localeAwareCompare(const QString&) const
        int xret = ((const x_QStringRef*)this)->QStringRef::localeAwareCompare(*(const QString*)x[1].s_class);
        x[0].s_int = xret;
    }
    void x_56(Smoke::Stack x) {
        // int localeAwareCompare(const QStringRef&) const
        int xret = ((const x_QStringRef*)this)->QStringRef::localeAwareCompare(*(const QStringRef*)x[1].s_class);
        x[0].s_int = xret;
    }
    static void x_57(Smoke::Stack x) {
        // static int localeAwareCompare(const QStringRef&, const QString&)
        int xret = QStringRef::localeAwareCompare(*(const QStringRef*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_int = xret;
    }
    static void x_58(Smoke::Stack x) {
        // static int localeAwareCompare(const QStringRef&, const QStringRef&)
        int xret = QStringRef::localeAwareCompare(*(const QStringRef*)x[1].s_class,*(const QStringRef*)x[2].s_class);
        x[0].s_int = xret;
    }
    void x_59(Smoke::Stack x) {
        // int indexOf(const QString&) const
        int xret = ((const x_QStringRef*)this)->QStringRef::indexOf(*(const QString*)x[1].s_class,(int)0,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_60(Smoke::Stack x) {
        // int indexOf(const QString&, int) const
        int xret = ((const x_QStringRef*)this)->QStringRef::indexOf(*(const QString*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_61(Smoke::Stack x) {
        // int indexOf(QChar) const
        int xret = ((const x_QStringRef*)this)->QStringRef::indexOf(*(QChar*)x[1].s_class,(int)0,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_62(Smoke::Stack x) {
        // int indexOf(QChar, int) const
        int xret = ((const x_QStringRef*)this)->QStringRef::indexOf(*(QChar*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_63(Smoke::Stack x) {
        // int indexOf(QLatin1String) const
        int xret = ((const x_QStringRef*)this)->QStringRef::indexOf(*(QLatin1String*)x[1].s_class,(int)0,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_64(Smoke::Stack x) {
        // int indexOf(QLatin1String, int) const
        int xret = ((const x_QStringRef*)this)->QStringRef::indexOf(*(QLatin1String*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_65(Smoke::Stack x) {
        // int indexOf(const QStringRef&) const
        int xret = ((const x_QStringRef*)this)->QStringRef::indexOf(*(const QStringRef*)x[1].s_class,(int)0,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_66(Smoke::Stack x) {
        // int indexOf(const QStringRef&, int) const
        int xret = ((const x_QStringRef*)this)->QStringRef::indexOf(*(const QStringRef*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_67(Smoke::Stack x) {
        // int lastIndexOf(const QString&) const
        int xret = ((const x_QStringRef*)this)->QStringRef::lastIndexOf(*(const QString*)x[1].s_class,(int)-1,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_68(Smoke::Stack x) {
        // int lastIndexOf(const QString&, int) const
        int xret = ((const x_QStringRef*)this)->QStringRef::lastIndexOf(*(const QString*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_69(Smoke::Stack x) {
        // int lastIndexOf(QChar) const
        int xret = ((const x_QStringRef*)this)->QStringRef::lastIndexOf(*(QChar*)x[1].s_class,(int)-1,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_70(Smoke::Stack x) {
        // int lastIndexOf(QChar, int) const
        int xret = ((const x_QStringRef*)this)->QStringRef::lastIndexOf(*(QChar*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_71(Smoke::Stack x) {
        // int lastIndexOf(QLatin1String) const
        int xret = ((const x_QStringRef*)this)->QStringRef::lastIndexOf(*(QLatin1String*)x[1].s_class,(int)-1,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_72(Smoke::Stack x) {
        // int lastIndexOf(QLatin1String, int) const
        int xret = ((const x_QStringRef*)this)->QStringRef::lastIndexOf(*(QLatin1String*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_73(Smoke::Stack x) {
        // int lastIndexOf(const QStringRef&) const
        int xret = ((const x_QStringRef*)this)->QStringRef::lastIndexOf(*(const QStringRef*)x[1].s_class,(int)-1,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_74(Smoke::Stack x) {
        // int lastIndexOf(const QStringRef&, int) const
        int xret = ((const x_QStringRef*)this)->QStringRef::lastIndexOf(*(const QStringRef*)x[1].s_class,(int)x[2].s_int,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_75(Smoke::Stack x) {
        // QBool contains(const QString&) const
        QBool xret = ((const x_QStringRef*)this)->QStringRef::contains(*(const QString*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_class = (void*)new QBool(xret);
    }
    void x_76(Smoke::Stack x) {
        // QBool contains(QChar) const
        QBool xret = ((const x_QStringRef*)this)->QStringRef::contains(*(QChar*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_class = (void*)new QBool(xret);
    }
    void x_77(Smoke::Stack x) {
        // QBool contains(QLatin1String) const
        QBool xret = ((const x_QStringRef*)this)->QStringRef::contains(*(QLatin1String*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_class = (void*)new QBool(xret);
    }
    void x_78(Smoke::Stack x) {
        // QBool contains(const QStringRef&) const
        QBool xret = ((const x_QStringRef*)this)->QStringRef::contains(*(const QStringRef*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_class = (void*)new QBool(xret);
    }
    void x_79(Smoke::Stack x) {
        // int count(const QString&) const
        int xret = ((const x_QStringRef*)this)->QStringRef::count(*(const QString*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_80(Smoke::Stack x) {
        // int count(QChar) const
        int xret = ((const x_QStringRef*)this)->QStringRef::count(*(QChar*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_81(Smoke::Stack x) {
        // int count(const QStringRef&) const
        int xret = ((const x_QStringRef*)this)->QStringRef::count(*(const QStringRef*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_82(Smoke::Stack x) {
        // bool startsWith(const QString&) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::startsWith(*(const QString*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_bool = xret;
    }
    void x_83(Smoke::Stack x) {
        // bool startsWith(QLatin1String) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::startsWith(*(QLatin1String*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_bool = xret;
    }
    void x_84(Smoke::Stack x) {
        // bool startsWith(QChar) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::startsWith(*(QChar*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_bool = xret;
    }
    void x_85(Smoke::Stack x) {
        // bool startsWith(const QStringRef&) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::startsWith(*(const QStringRef*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_bool = xret;
    }
    void x_86(Smoke::Stack x) {
        // bool endsWith(const QString&) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::endsWith(*(const QString*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_bool = xret;
    }
    void x_87(Smoke::Stack x) {
        // bool endsWith(QLatin1String) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::endsWith(*(QLatin1String*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_bool = xret;
    }
    void x_88(Smoke::Stack x) {
        // bool endsWith(QChar) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::endsWith(*(QChar*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_bool = xret;
    }
    void x_89(Smoke::Stack x) {
        // bool endsWith(const QStringRef&) const
        bool xret = ((const x_QStringRef*)this)->QStringRef::endsWith(*(const QStringRef*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_bool = xret;
    }
    void x_90(Smoke::Stack x) {
        // int compare(const QString&) const
        int xret = ((const x_QStringRef*)this)->QStringRef::compare(*(const QString*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_91(Smoke::Stack x) {
        // int compare(const QStringRef&) const
        int xret = ((const x_QStringRef*)this)->QStringRef::compare(*(const QStringRef*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    void x_92(Smoke::Stack x) {
        // int compare(QLatin1String) const
        int xret = ((const x_QStringRef*)this)->QStringRef::compare(*(QLatin1String*)x[1].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    static void x_93(Smoke::Stack x) {
        // static int compare(const QStringRef&, const QString&)
        int xret = QStringRef::compare(*(const QStringRef*)x[1].s_class,*(const QString*)x[2].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    static void x_94(Smoke::Stack x) {
        // static int compare(const QStringRef&, const QStringRef&)
        int xret = QStringRef::compare(*(const QStringRef*)x[1].s_class,*(const QStringRef*)x[2].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    static void x_95(Smoke::Stack x) {
        // static int compare(const QStringRef&, QLatin1String)
        int xret = QStringRef::compare(*(const QStringRef*)x[1].s_class,*(QLatin1String*)x[2].s_class,(Qt::CaseSensitivity)Qt::CaseSensitive);
        x[0].s_int = xret;
    }
    ~x_QStringRef() { this->_binding->deleted(114, (void*)this); }
};
void xcall_QStringRef(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QStringRef *xself = (x_QStringRef*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QStringRef::x_1(args);	break;
        case 2: x_QStringRef::x_2(args);	break;
        case 3: x_QStringRef::x_3(args);	break;
        case 4: x_QStringRef::x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: xself->x_18(args);	break;
        case 19: xself->x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: xself->x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: xself->x_25(args);	break;
        case 26: xself->x_26(args);	break;
        case 27: xself->x_27(args);	break;
        case 28: xself->x_28(args);	break;
        case 29: xself->x_29(args);	break;
        case 30: xself->x_30(args);	break;
        case 31: xself->x_31(args);	break;
        case 32: xself->x_32(args);	break;
        case 33: xself->x_33(args);	break;
        case 34: xself->x_34(args);	break;
        case 35: xself->x_35(args);	break;
        case 36: xself->x_36(args);	break;
        case 37: xself->x_37(args);	break;
        case 38: xself->x_38(args);	break;
        case 39: xself->x_39(args);	break;
        case 40: xself->x_40(args);	break;
        case 41: xself->x_41(args);	break;
        case 42: xself->x_42(args);	break;
        case 43: xself->x_43(args);	break;
        case 44: xself->x_44(args);	break;
        case 45: xself->x_45(args);	break;
        case 46: xself->x_46(args);	break;
        case 47: xself->x_47(args);	break;
        case 48: xself->x_48(args);	break;
        case 49: xself->x_49(args);	break;
        case 50: xself->x_50(args);	break;
        case 51: xself->x_51(args);	break;
        case 52: x_QStringRef::x_52(args);	break;
        case 53: x_QStringRef::x_53(args);	break;
        case 54: x_QStringRef::x_54(args);	break;
        case 55: xself->x_55(args);	break;
        case 56: xself->x_56(args);	break;
        case 57: x_QStringRef::x_57(args);	break;
        case 58: x_QStringRef::x_58(args);	break;
        case 59: xself->x_59(args);	break;
        case 60: xself->x_60(args);	break;
        case 61: xself->x_61(args);	break;
        case 62: xself->x_62(args);	break;
        case 63: xself->x_63(args);	break;
        case 64: xself->x_64(args);	break;
        case 65: xself->x_65(args);	break;
        case 66: xself->x_66(args);	break;
        case 67: xself->x_67(args);	break;
        case 68: xself->x_68(args);	break;
        case 69: xself->x_69(args);	break;
        case 70: xself->x_70(args);	break;
        case 71: xself->x_71(args);	break;
        case 72: xself->x_72(args);	break;
        case 73: xself->x_73(args);	break;
        case 74: xself->x_74(args);	break;
        case 75: xself->x_75(args);	break;
        case 76: xself->x_76(args);	break;
        case 77: xself->x_77(args);	break;
        case 78: xself->x_78(args);	break;
        case 79: xself->x_79(args);	break;
        case 80: xself->x_80(args);	break;
        case 81: xself->x_81(args);	break;
        case 82: xself->x_82(args);	break;
        case 83: xself->x_83(args);	break;
        case 84: xself->x_84(args);	break;
        case 85: xself->x_85(args);	break;
        case 86: xself->x_86(args);	break;
        case 87: xself->x_87(args);	break;
        case 88: xself->x_88(args);	break;
        case 89: xself->x_89(args);	break;
        case 90: xself->x_90(args);	break;
        case 91: xself->x_91(args);	break;
        case 92: xself->x_92(args);	break;
        case 93: x_QStringRef::x_93(args);	break;
        case 94: x_QStringRef::x_94(args);	break;
        case 95: x_QStringRef::x_95(args);	break;
        case 96: delete (QStringRef*)xself;	break;
    }
}
class x_QSysInfo : public QSysInfo {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // QSysInfo* QSysInfo()
        x_QSysInfo* xret = new x_QSysInfo();
        x[0].s_class = (void*)xret;
    }
    explicit x_QSysInfo() : QSysInfo() {}
    static void x_2(Smoke::Stack x) {
        // QSysInfo* QSysInfo(const QSysInfo&)
        x_QSysInfo* xret = new x_QSysInfo(*(const QSysInfo*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSysInfo(const QSysInfo& x1) : QSysInfo(x1) {}
    static void x_3(Smoke::Stack x) {
        x[0].s_enum = (long)QSysInfo::WordSize;
    }
    static void x_4(Smoke::Stack x) {
        x[0].s_enum = (long)QSysInfo::BigEndian;
    }
    static void x_5(Smoke::Stack x) {
        x[0].s_enum = (long)QSysInfo::LittleEndian;
    }
    static void x_6(Smoke::Stack x) {
        x[0].s_enum = (long)QSysInfo::ByteOrder;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 326: //QSysInfo::Sizes
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QSysInfo::Sizes;
                    break;
                case Smoke::EnumDelete:
                    delete (QSysInfo::Sizes*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QSysInfo::Sizes*)xdata = (QSysInfo::Sizes)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QSysInfo::Sizes*)xdata;
                    break;
            }
            break;
        case 325: //QSysInfo::Endian
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QSysInfo::Endian;
                    break;
                case Smoke::EnumDelete:
                    delete (QSysInfo::Endian*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QSysInfo::Endian*)xdata = (QSysInfo::Endian)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QSysInfo::Endian*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QSysInfo() { this->_binding->deleted(115, (void*)this); }
};
void xenum_QSysInfo(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QSysInfo::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QSysInfo(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QSysInfo *xself = (x_QSysInfo*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QSysInfo::x_1(args);	break;
        case 2: x_QSysInfo::x_2(args);	break;
        case 3: x_QSysInfo::x_3(args);	break;
        case 4: x_QSysInfo::x_4(args);	break;
        case 5: x_QSysInfo::x_5(args);	break;
        case 6: x_QSysInfo::x_6(args);	break;
        case 7: delete (QSysInfo*)xself;	break;
    }
}
class x_QSystemLocale : public QSystemLocale, public __internal_SmokeClass {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // QSystemLocale* QSystemLocale()
        x_QSystemLocale* xret = new x_QSystemLocale();
        x[0].s_class = (void*)xret;
    }
    explicit x_QSystemLocale() : QSystemLocale() {}
    void x_2(Smoke::Stack x) {
        // virtual QVariant query(QSystemLocale::QueryType, QVariant) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QSystemLocale*>(this))) {
            QVariant xret = ((const x_QSystemLocale*)this)->QSystemLocale::query((QSystemLocale::QueryType)x[1].s_enum,*(QVariant*)x[2].s_class);
            x[0].s_class = (void*)new QVariant(xret);
        } else {
            QVariant xret = ((const x_QSystemLocale*)this)->query((QSystemLocale::QueryType)x[1].s_enum,*(QVariant*)x[2].s_class);
            x[0].s_class = (void*)new QVariant(xret);
        }
    }
    void x_3(Smoke::Stack x) {
        // virtual QLocale fallbackLocale() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QSystemLocale*>(this))) {
            QLocale xret = ((const x_QSystemLocale*)this)->QSystemLocale::fallbackLocale();
            x[0].s_class = (void*)new QLocale(xret);
        } else {
            QLocale xret = ((const x_QSystemLocale*)this)->fallbackLocale();
            x[0].s_class = (void*)new QLocale(xret);
        }
    }
    static void x_4(Smoke::Stack x) {
        // QSystemLocale* QSystemLocale(const QSystemLocale&)
        x_QSystemLocale* xret = new x_QSystemLocale(*(const QSystemLocale*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSystemLocale(const QSystemLocale& x1) : QSystemLocale(x1) {}
    static void x_5(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::LanguageId;
    }
    static void x_6(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::CountryId;
    }
    static void x_7(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::DecimalPoint;
    }
    static void x_8(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::GroupSeparator;
    }
    static void x_9(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::ZeroDigit;
    }
    static void x_10(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::NegativeSign;
    }
    static void x_11(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::DateFormatLong;
    }
    static void x_12(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::DateFormatShort;
    }
    static void x_13(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::TimeFormatLong;
    }
    static void x_14(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::TimeFormatShort;
    }
    static void x_15(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::DayNameLong;
    }
    static void x_16(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::DayNameShort;
    }
    static void x_17(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::MonthNameLong;
    }
    static void x_18(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::MonthNameShort;
    }
    static void x_19(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::DateToStringLong;
    }
    static void x_20(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::DateToStringShort;
    }
    static void x_21(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::TimeToStringLong;
    }
    static void x_22(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::TimeToStringShort;
    }
    static void x_23(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::DateTimeFormatLong;
    }
    static void x_24(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::DateTimeFormatShort;
    }
    static void x_25(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::DateTimeToStringLong;
    }
    static void x_26(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::DateTimeToStringShort;
    }
    static void x_27(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::MeasurementSystem;
    }
    static void x_28(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::PositiveSign;
    }
    static void x_29(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::AMText;
    }
    static void x_30(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::PMText;
    }
    static void x_31(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::FirstDayOfWeek;
    }
    static void x_32(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::Weekdays;
    }
    static void x_33(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::CurrencySymbol;
    }
    static void x_34(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::CurrencyToString;
    }
    static void x_35(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::UILanguages;
    }
    static void x_36(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::StringToStandardQuotation;
    }
    static void x_37(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::StringToAlternateQuotation;
    }
    static void x_38(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::ScriptId;
    }
    static void x_39(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::ListToSeparatedString;
    }
    static void x_40(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::LocaleChanged;
    }
    static void x_41(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::NativeLanguageName;
    }
    static void x_42(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::NativeCountryName;
    }
    static void x_43(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::StandaloneMonthNameLong;
    }
    static void x_44(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemLocale::StandaloneMonthNameShort;
    }
    virtual QVariant query(QSystemLocale::QueryType x1, QVariant x2) const {
        Smoke::StackItem x[3];
        x[1].s_enum = x1;
        x[2].s_class = (void*)new QVariant(x2);
        if (this->_binding->callMethod(4872, (void*)this, x)) {
            QVariant* xptr = (QVariant*)x[0].s_class;
            QVariant xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QSystemLocale::query(x1, x2);
    }
    virtual QLocale fallbackLocale() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(4873, (void*)this, x)) {
            QLocale* xptr = (QLocale*)x[0].s_class;
            QLocale xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QSystemLocale::fallbackLocale();
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 328: //QSystemLocale::QueryType
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QSystemLocale::QueryType;
                    break;
                case Smoke::EnumDelete:
                    delete (QSystemLocale::QueryType*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QSystemLocale::QueryType*)xdata = (QSystemLocale::QueryType)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QSystemLocale::QueryType*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QSystemLocale() { this->_binding->deleted(116, (void*)this); }
};
void xenum_QSystemLocale(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QSystemLocale::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QSystemLocale(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QSystemLocale *xself = (x_QSystemLocale*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QSystemLocale::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: x_QSystemLocale::x_4(args);	break;
        case 5: x_QSystemLocale::x_5(args);	break;
        case 6: x_QSystemLocale::x_6(args);	break;
        case 7: x_QSystemLocale::x_7(args);	break;
        case 8: x_QSystemLocale::x_8(args);	break;
        case 9: x_QSystemLocale::x_9(args);	break;
        case 10: x_QSystemLocale::x_10(args);	break;
        case 11: x_QSystemLocale::x_11(args);	break;
        case 12: x_QSystemLocale::x_12(args);	break;
        case 13: x_QSystemLocale::x_13(args);	break;
        case 14: x_QSystemLocale::x_14(args);	break;
        case 15: x_QSystemLocale::x_15(args);	break;
        case 16: x_QSystemLocale::x_16(args);	break;
        case 17: x_QSystemLocale::x_17(args);	break;
        case 18: x_QSystemLocale::x_18(args);	break;
        case 19: x_QSystemLocale::x_19(args);	break;
        case 20: x_QSystemLocale::x_20(args);	break;
        case 21: x_QSystemLocale::x_21(args);	break;
        case 22: x_QSystemLocale::x_22(args);	break;
        case 23: x_QSystemLocale::x_23(args);	break;
        case 24: x_QSystemLocale::x_24(args);	break;
        case 25: x_QSystemLocale::x_25(args);	break;
        case 26: x_QSystemLocale::x_26(args);	break;
        case 27: x_QSystemLocale::x_27(args);	break;
        case 28: x_QSystemLocale::x_28(args);	break;
        case 29: x_QSystemLocale::x_29(args);	break;
        case 30: x_QSystemLocale::x_30(args);	break;
        case 31: x_QSystemLocale::x_31(args);	break;
        case 32: x_QSystemLocale::x_32(args);	break;
        case 33: x_QSystemLocale::x_33(args);	break;
        case 34: x_QSystemLocale::x_34(args);	break;
        case 35: x_QSystemLocale::x_35(args);	break;
        case 36: x_QSystemLocale::x_36(args);	break;
        case 37: x_QSystemLocale::x_37(args);	break;
        case 38: x_QSystemLocale::x_38(args);	break;
        case 39: x_QSystemLocale::x_39(args);	break;
        case 40: x_QSystemLocale::x_40(args);	break;
        case 41: x_QSystemLocale::x_41(args);	break;
        case 42: x_QSystemLocale::x_42(args);	break;
        case 43: x_QSystemLocale::x_43(args);	break;
        case 44: x_QSystemLocale::x_44(args);	break;
        case 45: delete (QSystemLocale*)xself;	break;
    }
}
class x_QSystemSemaphore : public QSystemSemaphore {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    static void x_1(Smoke::Stack x) {
        // QSystemSemaphore* QSystemSemaphore(const QString&, int, QSystemSemaphore::AccessMode)
        x_QSystemSemaphore* xret = new x_QSystemSemaphore(*(const QString*)x[1].s_class,(int)x[2].s_int,(QSystemSemaphore::AccessMode)x[3].s_enum);
        x[0].s_class = (void*)xret;
    }
    explicit x_QSystemSemaphore(const QString& x1, int x2, QSystemSemaphore::AccessMode x3) : QSystemSemaphore(x1, x2, x3) {}
    void x_2(Smoke::Stack x) {
        // void setKey(const QString&, int, QSystemSemaphore::AccessMode)
        this->QSystemSemaphore::setKey(*(const QString*)x[1].s_class,(int)x[2].s_int,(QSystemSemaphore::AccessMode)x[3].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_3(Smoke::Stack x) {
        // QString key() const
        QString xret = ((const x_QSystemSemaphore*)this)->QSystemSemaphore::key();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_4(Smoke::Stack x) {
        // bool acquire()
        bool xret = this->QSystemSemaphore::acquire();
        x[0].s_bool = xret;
    }
    void x_5(Smoke::Stack x) {
        // bool release(int)
        bool xret = this->QSystemSemaphore::release((int)x[1].s_int);
        x[0].s_bool = xret;
    }
    void x_6(Smoke::Stack x) {
        // QSystemSemaphore::SystemSemaphoreError error() const
        QSystemSemaphore::SystemSemaphoreError xret = ((const x_QSystemSemaphore*)this)->QSystemSemaphore::error();
        x[0].s_enum = xret;
    }
    void x_7(Smoke::Stack x) {
        // QString errorString() const
        QString xret = ((const x_QSystemSemaphore*)this)->QSystemSemaphore::errorString();
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_8(Smoke::Stack x) {
        // QSystemSemaphore* QSystemSemaphore(const QString&)
        x_QSystemSemaphore* xret = new x_QSystemSemaphore(*(const QString*)x[1].s_class,(int)0,(QSystemSemaphore::AccessMode)QSystemSemaphore::Open);
        x[0].s_class = (void*)xret;
    }
    static void x_9(Smoke::Stack x) {
        // QSystemSemaphore* QSystemSemaphore(const QString&, int)
        x_QSystemSemaphore* xret = new x_QSystemSemaphore(*(const QString*)x[1].s_class,(int)x[2].s_int,(QSystemSemaphore::AccessMode)QSystemSemaphore::Open);
        x[0].s_class = (void*)xret;
    }
    void x_10(Smoke::Stack x) {
        // void setKey(const QString&)
        this->QSystemSemaphore::setKey(*(const QString*)x[1].s_class,(int)0,(QSystemSemaphore::AccessMode)QSystemSemaphore::Open);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void setKey(const QString&, int)
        this->QSystemSemaphore::setKey(*(const QString*)x[1].s_class,(int)x[2].s_int,(QSystemSemaphore::AccessMode)QSystemSemaphore::Open);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // bool release()
        bool xret = this->QSystemSemaphore::release((int)1);
        x[0].s_bool = xret;
    }
    static void x_13(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemSemaphore::Open;
    }
    static void x_14(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemSemaphore::Create;
    }
    static void x_15(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemSemaphore::NoError;
    }
    static void x_16(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemSemaphore::PermissionDenied;
    }
    static void x_17(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemSemaphore::KeyError;
    }
    static void x_18(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemSemaphore::AlreadyExists;
    }
    static void x_19(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemSemaphore::NotFound;
    }
    static void x_20(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemSemaphore::OutOfResources;
    }
    static void x_21(Smoke::Stack x) {
        x[0].s_enum = (long)QSystemSemaphore::UnknownError;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 330: //QSystemSemaphore::AccessMode
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QSystemSemaphore::AccessMode;
                    break;
                case Smoke::EnumDelete:
                    delete (QSystemSemaphore::AccessMode*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QSystemSemaphore::AccessMode*)xdata = (QSystemSemaphore::AccessMode)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QSystemSemaphore::AccessMode*)xdata;
                    break;
            }
            break;
        case 331: //QSystemSemaphore::SystemSemaphoreError
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QSystemSemaphore::SystemSemaphoreError;
                    break;
                case Smoke::EnumDelete:
                    delete (QSystemSemaphore::SystemSemaphoreError*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QSystemSemaphore::SystemSemaphoreError*)xdata = (QSystemSemaphore::SystemSemaphoreError)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QSystemSemaphore::SystemSemaphoreError*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QSystemSemaphore() { this->_binding->deleted(117, (void*)this); }
};
void xenum_QSystemSemaphore(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QSystemSemaphore::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QSystemSemaphore(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QSystemSemaphore *xself = (x_QSystemSemaphore*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QSystemSemaphore::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: xself->x_5(args);	break;
        case 6: xself->x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QSystemSemaphore::x_8(args);	break;
        case 9: x_QSystemSemaphore::x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: x_QSystemSemaphore::x_13(args);	break;
        case 14: x_QSystemSemaphore::x_14(args);	break;
        case 15: x_QSystemSemaphore::x_15(args);	break;
        case 16: x_QSystemSemaphore::x_16(args);	break;
        case 17: x_QSystemSemaphore::x_17(args);	break;
        case 18: x_QSystemSemaphore::x_18(args);	break;
        case 19: x_QSystemSemaphore::x_19(args);	break;
        case 20: x_QSystemSemaphore::x_20(args);	break;
        case 21: x_QSystemSemaphore::x_21(args);	break;
        case 22: delete (QSystemSemaphore*)xself;	break;
    }
}
class x_QTemporaryFile : public QTemporaryFile, public __internal_SmokeClass {
    SmokeBinding* _binding;
public:
    void x_0(Smoke::Stack x) {
        // set the smoke binding
        _binding = (SmokeBinding*)x[1].s_class;
    }
    void x_1(Smoke::Stack x) {
        // virtual const QMetaObject* metaObject() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QTemporaryFile*>(this))) {
            const QMetaObject* xret = ((const x_QTemporaryFile*)this)->QTemporaryFile::metaObject();
            x[0].s_class = (void*)xret;
        } else {
            const QMetaObject* xret = ((const x_QTemporaryFile*)this)->metaObject();
            x[0].s_class = (void*)xret;
        }
    }
    void x_2(Smoke::Stack x) {
        // virtual void* qt_metacast(const char*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QTemporaryFile*>(this))) {
            void* xret = this->QTemporaryFile::qt_metacast((const char*)x[1].s_class);
            x[0].s_class = (void*)xret;
        } else {
            void* xret = this->qt_metacast((const char*)x[1].s_class);
            x[0].s_class = (void*)xret;
        }
    }
    static void x_3(Smoke::Stack x) {
        // static QString tr(const char*, const char*)
        QString xret = QTemporaryFile::tr((const char*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_4(Smoke::Stack x) {
        // static QString trUtf8(const char*, const char*)
        QString xret = QTemporaryFile::trUtf8((const char*)x[1].s_class,(const char*)x[2].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_5(Smoke::Stack x) {
        // static QString tr(const char*, const char*, int)
        QString xret = QTemporaryFile::tr((const char*)x[1].s_class,(const char*)x[2].s_class,(int)x[3].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_6(Smoke::Stack x) {
        // static QString trUtf8(const char*, const char*, int)
        QString xret = QTemporaryFile::trUtf8((const char*)x[1].s_class,(const char*)x[2].s_class,(int)x[3].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_7(Smoke::Stack x) {
        // virtual int qt_metacall(QMetaObject::Call, int, void**)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QTemporaryFile*>(this))) {
            int xret = this->QTemporaryFile::qt_metacall((QMetaObject::Call)x[1].s_enum,(int)x[2].s_int,(void**)x[3].s_class);
            x[0].s_int = xret;
        } else {
            int xret = this->qt_metacall((QMetaObject::Call)x[1].s_enum,(int)x[2].s_int,(void**)x[3].s_class);
            x[0].s_int = xret;
        }
    }
    static void x_8(Smoke::Stack x) {
        // QTemporaryFile* QTemporaryFile()
        x_QTemporaryFile* xret = new x_QTemporaryFile();
        x[0].s_class = (void*)xret;
    }
    explicit x_QTemporaryFile() : QTemporaryFile() {}
    static void x_9(Smoke::Stack x) {
        // QTemporaryFile* QTemporaryFile(const QString&)
        x_QTemporaryFile* xret = new x_QTemporaryFile(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QTemporaryFile(const QString& x1) : QTemporaryFile(x1) {}
    static void x_10(Smoke::Stack x) {
        // QTemporaryFile* QTemporaryFile(QObject*)
        x_QTemporaryFile* xret = new x_QTemporaryFile((QObject*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QTemporaryFile(QObject* x1) : QTemporaryFile(x1) {}
    static void x_11(Smoke::Stack x) {
        // QTemporaryFile* QTemporaryFile(const QString&, QObject*)
        x_QTemporaryFile* xret = new x_QTemporaryFile(*(const QString*)x[1].s_class,(QObject*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QTemporaryFile(const QString& x1, QObject* x2) : QTemporaryFile(x1, x2) {}
    void x_12(Smoke::Stack x) {
        // bool autoRemove() const
        bool xret = ((const x_QTemporaryFile*)this)->QTemporaryFile::autoRemove();
        x[0].s_bool = xret;
    }
    void x_13(Smoke::Stack x) {
        // void setAutoRemove(bool)
        this->QTemporaryFile::setAutoRemove((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // bool open()
        bool xret = this->QTemporaryFile::open();
        x[0].s_bool = xret;
    }
    void x_15(Smoke::Stack x) {
        // QString fileName() const
        QString xret = ((const x_QTemporaryFile*)this)->QTemporaryFile::fileName();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_16(Smoke::Stack x) {
        // QString fileTemplate() const
        QString xret = ((const x_QTemporaryFile*)this)->QTemporaryFile::fileTemplate();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_17(Smoke::Stack x) {
        // void setFileTemplate(const QString&)
        this->QTemporaryFile::setFileTemplate(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_18(Smoke::Stack x) {
        // static QTemporaryFile* createLocalFile(const QString&)
        QTemporaryFile* xret = QTemporaryFile::createLocalFile(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    static void x_19(Smoke::Stack x) {
        // static QTemporaryFile* createLocalFile(QFile&)
        QTemporaryFile* xret = QTemporaryFile::createLocalFile(*(QFile*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    void x_20(Smoke::Stack x) {
        // virtual QAbstractFileEngine* fileEngine() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QTemporaryFile*>(this))) {
            QAbstractFileEngine* xret = ((const x_QTemporaryFile*)this)->QTemporaryFile::fileEngine();
            x[0].s_class = (void*)xret;
        } else {
            QAbstractFileEngine* xret = ((const x_QTemporaryFile*)this)->fileEngine();
            x[0].s_class = (void*)xret;
        }
    }
    void x_21(Smoke::Stack x) {
        // bool open(QFlags<QIODevice::OpenModeFlag>)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QTemporaryFile*>(this))) {
            bool xret = this->QTemporaryFile::open((QFlags<QIODevice::OpenModeFlag>)x[1].s_uint);
            x[0].s_bool = xret;
        } else {
            bool xret = this->open((QFlags<QIODevice::OpenModeFlag>)x[1].s_uint);
            x[0].s_bool = xret;
        }
    }
    static void x_22(Smoke::Stack x) {
        // static QString tr(const char*)
        QString xret = QTemporaryFile::tr((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_23(Smoke::Stack x) {
        // static QString trUtf8(const char*)
        QString xret = QTemporaryFile::trUtf8((const char*)x[1].s_class,(const char*)0);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_24(Smoke::Stack x) {
        // static const QMetaObject staticMetaObject
        x[0].s_class = (void*)&QTemporaryFile::staticMetaObject;
    }
    virtual const QMetaObject* metaObject() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(4938, (void*)this, x)) return (const QMetaObject*)x[0].s_class;
        return this->QTemporaryFile::metaObject();
    }
    virtual void* qt_metacast(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(4939, (void*)this, x)) return (void*)x[0].s_class;
        return this->QTemporaryFile::qt_metacast(x1);
    }
    virtual int qt_metacall(QMetaObject::Call x1, int x2, void** x3) {
        Smoke::StackItem x[4];
        x[1].s_enum = x1;
        x[2].s_int = x2;
        x[3].s_class = (void*)x3;
        if (this->_binding->callMethod(4944, (void*)this, x)) return (int)x[0].s_int;
        return this->QTemporaryFile::qt_metacall(x1, x2, x3);
    }
    virtual QAbstractFileEngine* fileEngine() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(4957, (void*)this, x)) return (QAbstractFileEngine*)x[0].s_class;
        return this->QTemporaryFile::fileEngine();
    }
    virtual void close() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1806, (void*)this, x)) return;
        this->QFile::close();
    }
    virtual bool isSequential() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1800, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QFile::isSequential();
    }
    virtual bool open(QFlags<QIODevice::OpenModeFlag> x1) {
        Smoke::StackItem x[2];
        x[1].s_uint = (uint)x1;
        if (this->_binding->callMethod(4958, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QTemporaryFile::open(x1);
    }
    virtual long long pos() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1808, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFile::pos();
    }
    virtual long long size() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1807, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFile::size();
    }
    virtual bool seek(long long x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)new long long(x1);
        if (this->_binding->callMethod(1809, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QFile::seek(x1);
    }
    virtual bool atEnd() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(1810, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QFile::atEnd();
    }
    virtual bool reset() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2520, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QIODevice::reset();
    }
    virtual long long bytesAvailable() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2521, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QIODevice::bytesAvailable();
    }
    virtual long long bytesToWrite() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2522, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QIODevice::bytesToWrite();
    }
    virtual bool canReadLine() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(2528, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QIODevice::canReadLine();
    }
    virtual bool waitForReadyRead(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2534, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QIODevice::waitForReadyRead(x1);
    }
    virtual bool waitForBytesWritten(int x1) {
        Smoke::StackItem x[2];
        x[1].s_int = x1;
        if (this->_binding->callMethod(2535, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QIODevice::waitForBytesWritten(x1);
    }
    virtual long long readData(char* x1, long long x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)new long long(x2);
        if (this->_binding->callMethod(1822, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFile::readData(x1, x2);
    }
    virtual long long readLineData(char* x1, long long x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)new long long(x2);
        if (this->_binding->callMethod(1824, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFile::readLineData(x1, x2);
    }
    virtual long long writeData(const char* x1, long long x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)new long long(x2);
        if (this->_binding->callMethod(1823, (void*)this, x)) {
            long long* xptr = (long long*)x[0].s_class;
            long long xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QFile::writeData(x1, x2);
    }
    virtual bool event(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3804, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::event(x1);
    }
    virtual bool eventFilter(QObject* x1, QEvent* x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(3805, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QObject::eventFilter(x1, x2);
    }
    virtual void timerEvent(QTimerEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3841, (void*)this, x)) return;
        this->QObject::timerEvent(x1);
    }
    virtual void childEvent(QChildEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3842, (void*)this, x)) return;
        this->QObject::childEvent(x1);
    }
    virtual void customEvent(QEvent* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3843, (void*)this, x)) return;
        this->QObject::customEvent(x1);
    }
    virtual void connectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3844, (void*)this, x)) return;
        this->QObject::connectNotify(x1);
    }
    virtual void disconnectNotify(const char* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(3845, (void*)this, x)) return;
        this->QObject::disconnectNotify(x1);
    }
    ~x_QTemporaryFile() { this->_binding->deleted(118, (void*)this); }
};
void xcall_QTemporaryFile(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QTemporaryFile *xself = (x_QTemporaryFile*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: xself->x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: x_QTemporaryFile::x_3(args);	break;
        case 4: x_QTemporaryFile::x_4(args);	break;
        case 5: x_QTemporaryFile::x_5(args);	break;
        case 6: x_QTemporaryFile::x_6(args);	break;
        case 7: xself->x_7(args);	break;
        case 8: x_QTemporaryFile::x_8(args);	break;
        case 9: x_QTemporaryFile::x_9(args);	break;
        case 10: x_QTemporaryFile::x_10(args);	break;
        case 11: x_QTemporaryFile::x_11(args);	break;
        case 12: xself->x_12(args);	break;
        case 13: xself->x_13(args);	break;
        case 14: xself->x_14(args);	break;
        case 15: xself->x_15(args);	break;
        case 16: xself->x_16(args);	break;
        case 17: xself->x_17(args);	break;
        case 18: x_QTemporaryFile::x_18(args);	break;
        case 19: x_QTemporaryFile::x_19(args);	break;
        case 20: xself->x_20(args);	break;
        case 21: xself->x_21(args);	break;
        case 22: x_QTemporaryFile::x_22(args);	break;
        case 23: x_QTemporaryFile::x_23(args);	break;
        case 24: x_QTemporaryFile::x_24(args);	break;
        case 25: delete (QTemporaryFile*)xself;	break;
    }
}

}
