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

#include <smoke.h>
#include <qtxml_smoke.h>

class __internal_SmokeClass {};

namespace __smokeqtxml {

class x_QDomAttr : public QDomAttr {
    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) {
        // QDomAttr* QDomAttr()
        x_QDomAttr* xret = new x_QDomAttr();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomAttr() : QDomAttr() {}
    static void x_2(Smoke::Stack x) {
        // QDomAttr* QDomAttr(const QDomAttr&)
        x_QDomAttr* xret = new x_QDomAttr(*(const QDomAttr*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomAttr(const QDomAttr& x1) : QDomAttr(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomAttr& operator=(const QDomAttr&)
        QDomAttr& xret = this->QDomAttr::operator=(*(const QDomAttr*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // QString name() const
        QString xret = ((const x_QDomAttr*)this)->QDomAttr::name();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_5(Smoke::Stack x) {
        // bool specified() const
        bool xret = ((const x_QDomAttr*)this)->QDomAttr::specified();
        x[0].s_bool = xret;
    }
    void x_6(Smoke::Stack x) {
        // QDomElement ownerElement() const
        QDomElement xret = ((const x_QDomAttr*)this)->QDomAttr::ownerElement();
        x[0].s_class = (void*)new QDomElement(xret);
    }
    void x_7(Smoke::Stack x) {
        // QString value() const
        QString xret = ((const x_QDomAttr*)this)->QDomAttr::value();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_8(Smoke::Stack x) {
        // void setValue(const QString&)
        this->QDomAttr::setValue(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_9(Smoke::Stack x) {
        // QDomNode::NodeType nodeType() const
        QDomNode::NodeType xret = ((const x_QDomAttr*)this)->QDomAttr::nodeType();
        x[0].s_enum = xret;
    }
    ~x_QDomAttr() { this->_binding->deleted(4, (void*)this); }
};
void xcall_QDomAttr(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomAttr *xself = (x_QDomAttr*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomAttr::x_1(args);	break;
        case 2: x_QDomAttr::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: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: delete (QDomAttr*)xself;	break;
    }
}
class x_QDomCDATASection : public QDomCDATASection {
    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) {
        // QDomCDATASection* QDomCDATASection()
        x_QDomCDATASection* xret = new x_QDomCDATASection();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomCDATASection() : QDomCDATASection() {}
    static void x_2(Smoke::Stack x) {
        // QDomCDATASection* QDomCDATASection(const QDomCDATASection&)
        x_QDomCDATASection* xret = new x_QDomCDATASection(*(const QDomCDATASection*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomCDATASection(const QDomCDATASection& x1) : QDomCDATASection(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomCDATASection& operator=(const QDomCDATASection&)
        QDomCDATASection& xret = this->QDomCDATASection::operator=(*(const QDomCDATASection*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // QDomNode::NodeType nodeType() const
        QDomNode::NodeType xret = ((const x_QDomCDATASection*)this)->QDomCDATASection::nodeType();
        x[0].s_enum = xret;
    }
    ~x_QDomCDATASection() { this->_binding->deleted(5, (void*)this); }
};
void xcall_QDomCDATASection(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomCDATASection *xself = (x_QDomCDATASection*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomCDATASection::x_1(args);	break;
        case 2: x_QDomCDATASection::x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: delete (QDomCDATASection*)xself;	break;
    }
}
class x_QDomCharacterData : public QDomCharacterData {
    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) {
        // QDomCharacterData* QDomCharacterData()
        x_QDomCharacterData* xret = new x_QDomCharacterData();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomCharacterData() : QDomCharacterData() {}
    static void x_2(Smoke::Stack x) {
        // QDomCharacterData* QDomCharacterData(const QDomCharacterData&)
        x_QDomCharacterData* xret = new x_QDomCharacterData(*(const QDomCharacterData*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomCharacterData(const QDomCharacterData& x1) : QDomCharacterData(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomCharacterData& operator=(const QDomCharacterData&)
        QDomCharacterData& xret = this->QDomCharacterData::operator=(*(const QDomCharacterData*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // QString substringData(unsigned long, unsigned long)
        QString xret = this->QDomCharacterData::substringData((unsigned long)x[1].s_ulong,(unsigned long)x[2].s_ulong);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_5(Smoke::Stack x) {
        // void appendData(const QString&)
        this->QDomCharacterData::appendData(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_6(Smoke::Stack x) {
        // void insertData(unsigned long, const QString&)
        this->QDomCharacterData::insertData((unsigned long)x[1].s_ulong,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_7(Smoke::Stack x) {
        // void deleteData(unsigned long, unsigned long)
        this->QDomCharacterData::deleteData((unsigned long)x[1].s_ulong,(unsigned long)x[2].s_ulong);
        (void)x; // noop (for compiler warning)
    }
    void x_8(Smoke::Stack x) {
        // void replaceData(unsigned long, unsigned long, const QString&)
        this->QDomCharacterData::replaceData((unsigned long)x[1].s_ulong,(unsigned long)x[2].s_ulong,*(const QString*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_9(Smoke::Stack x) {
        // unsigned int length() const
        unsigned int xret = ((const x_QDomCharacterData*)this)->QDomCharacterData::length();
        x[0].s_uint = xret;
    }
    void x_10(Smoke::Stack x) {
        // QString data() const
        QString xret = ((const x_QDomCharacterData*)this)->QDomCharacterData::data();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_11(Smoke::Stack x) {
        // void setData(const QString&)
        this->QDomCharacterData::setData(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // QDomNode::NodeType nodeType() const
        QDomNode::NodeType xret = ((const x_QDomCharacterData*)this)->QDomCharacterData::nodeType();
        x[0].s_enum = xret;
    }
    ~x_QDomCharacterData() { this->_binding->deleted(6, (void*)this); }
};
void xcall_QDomCharacterData(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomCharacterData *xself = (x_QDomCharacterData*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomCharacterData::x_1(args);	break;
        case 2: x_QDomCharacterData::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: 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: delete (QDomCharacterData*)xself;	break;
    }
}
class x_QDomComment : public QDomComment {
    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) {
        // QDomComment* QDomComment()
        x_QDomComment* xret = new x_QDomComment();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomComment() : QDomComment() {}
    static void x_2(Smoke::Stack x) {
        // QDomComment* QDomComment(const QDomComment&)
        x_QDomComment* xret = new x_QDomComment(*(const QDomComment*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomComment(const QDomComment& x1) : QDomComment(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomComment& operator=(const QDomComment&)
        QDomComment& xret = this->QDomComment::operator=(*(const QDomComment*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // QDomNode::NodeType nodeType() const
        QDomNode::NodeType xret = ((const x_QDomComment*)this)->QDomComment::nodeType();
        x[0].s_enum = xret;
    }
    ~x_QDomComment() { this->_binding->deleted(7, (void*)this); }
};
void xcall_QDomComment(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomComment *xself = (x_QDomComment*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomComment::x_1(args);	break;
        case 2: x_QDomComment::x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: delete (QDomComment*)xself;	break;
    }
}
class x_QDomDocument : public QDomDocument {
    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) {
        // QDomDocument* QDomDocument()
        x_QDomDocument* xret = new x_QDomDocument();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomDocument() : QDomDocument() {}
    static void x_2(Smoke::Stack x) {
        // QDomDocument* QDomDocument(const QString&)
        x_QDomDocument* xret = new x_QDomDocument(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomDocument(const QString& x1) : QDomDocument(x1) {}
    static void x_3(Smoke::Stack x) {
        // QDomDocument* QDomDocument(const QDomDocumentType&)
        x_QDomDocument* xret = new x_QDomDocument(*(const QDomDocumentType*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomDocument(const QDomDocumentType& x1) : QDomDocument(x1) {}
    static void x_4(Smoke::Stack x) {
        // QDomDocument* QDomDocument(const QDomDocument&)
        x_QDomDocument* xret = new x_QDomDocument(*(const QDomDocument*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomDocument(const QDomDocument& x1) : QDomDocument(x1) {}
    void x_5(Smoke::Stack x) {
        // QDomDocument& operator=(const QDomDocument&)
        QDomDocument& xret = this->QDomDocument::operator=(*(const QDomDocument*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_6(Smoke::Stack x) {
        // QDomElement createElement(const QString&)
        QDomElement xret = this->QDomDocument::createElement(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomElement(xret);
    }
    void x_7(Smoke::Stack x) {
        // QDomDocumentFragment createDocumentFragment()
        QDomDocumentFragment xret = this->QDomDocument::createDocumentFragment();
        x[0].s_class = (void*)new QDomDocumentFragment(xret);
    }
    void x_8(Smoke::Stack x) {
        // QDomText createTextNode(const QString&)
        QDomText xret = this->QDomDocument::createTextNode(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomText(xret);
    }
    void x_9(Smoke::Stack x) {
        // QDomComment createComment(const QString&)
        QDomComment xret = this->QDomDocument::createComment(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomComment(xret);
    }
    void x_10(Smoke::Stack x) {
        // QDomCDATASection createCDATASection(const QString&)
        QDomCDATASection xret = this->QDomDocument::createCDATASection(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomCDATASection(xret);
    }
    void x_11(Smoke::Stack x) {
        // QDomProcessingInstruction createProcessingInstruction(const QString&, const QString&)
        QDomProcessingInstruction xret = this->QDomDocument::createProcessingInstruction(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_class = (void*)new QDomProcessingInstruction(xret);
    }
    void x_12(Smoke::Stack x) {
        // QDomAttr createAttribute(const QString&)
        QDomAttr xret = this->QDomDocument::createAttribute(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomAttr(xret);
    }
    void x_13(Smoke::Stack x) {
        // QDomEntityReference createEntityReference(const QString&)
        QDomEntityReference xret = this->QDomDocument::createEntityReference(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomEntityReference(xret);
    }
    void x_14(Smoke::Stack x) {
        // QDomNodeList elementsByTagName(const QString&) const
        QDomNodeList xret = ((const x_QDomDocument*)this)->QDomDocument::elementsByTagName(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomNodeList(xret);
    }
    void x_15(Smoke::Stack x) {
        // QDomNode importNode(const QDomNode&, bool)
        QDomNode xret = this->QDomDocument::importNode(*(const QDomNode*)x[1].s_class,(bool)x[2].s_bool);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_16(Smoke::Stack x) {
        // QDomElement createElementNS(const QString&, const QString&)
        QDomElement xret = this->QDomDocument::createElementNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_class = (void*)new QDomElement(xret);
    }
    void x_17(Smoke::Stack x) {
        // QDomAttr createAttributeNS(const QString&, const QString&)
        QDomAttr xret = this->QDomDocument::createAttributeNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_class = (void*)new QDomAttr(xret);
    }
    void x_18(Smoke::Stack x) {
        // QDomNodeList elementsByTagNameNS(const QString&, const QString&)
        QDomNodeList xret = this->QDomDocument::elementsByTagNameNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_class = (void*)new QDomNodeList(xret);
    }
    void x_19(Smoke::Stack x) {
        // QDomElement elementById(const QString&)
        QDomElement xret = this->QDomDocument::elementById(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomElement(xret);
    }
    void x_20(Smoke::Stack x) {
        // QDomDocumentType doctype() const
        QDomDocumentType xret = ((const x_QDomDocument*)this)->QDomDocument::doctype();
        x[0].s_class = (void*)new QDomDocumentType(xret);
    }
    void x_21(Smoke::Stack x) {
        // QDomImplementation implementation() const
        QDomImplementation xret = ((const x_QDomDocument*)this)->QDomDocument::implementation();
        x[0].s_class = (void*)new QDomImplementation(xret);
    }
    void x_22(Smoke::Stack x) {
        // QDomElement documentElement() const
        QDomElement xret = ((const x_QDomDocument*)this)->QDomDocument::documentElement();
        x[0].s_class = (void*)new QDomElement(xret);
    }
    void x_23(Smoke::Stack x) {
        // QDomNode::NodeType nodeType() const
        QDomNode::NodeType xret = ((const x_QDomDocument*)this)->QDomDocument::nodeType();
        x[0].s_enum = xret;
    }
    void x_24(Smoke::Stack x) {
        // bool setContent(const QByteArray&, bool, QString*, int*, int*)
        bool xret = this->QDomDocument::setContent(*(const QByteArray*)x[1].s_class,(bool)x[2].s_bool,(QString*)x[3].s_class,(int*)x[4].s_class,(int*)x[5].s_class);
        x[0].s_bool = xret;
    }
    void x_25(Smoke::Stack x) {
        // bool setContent(const QString&, bool, QString*, int*, int*)
        bool xret = this->QDomDocument::setContent(*(const QString*)x[1].s_class,(bool)x[2].s_bool,(QString*)x[3].s_class,(int*)x[4].s_class,(int*)x[5].s_class);
        x[0].s_bool = xret;
    }
    void x_26(Smoke::Stack x) {
        // bool setContent(QIODevice*, bool, QString*, int*, int*)
        bool xret = this->QDomDocument::setContent((QIODevice*)x[1].s_class,(bool)x[2].s_bool,(QString*)x[3].s_class,(int*)x[4].s_class,(int*)x[5].s_class);
        x[0].s_bool = xret;
    }
    void x_27(Smoke::Stack x) {
        // bool setContent(QXmlInputSource*, bool, QString*, int*, int*)
        bool xret = this->QDomDocument::setContent((QXmlInputSource*)x[1].s_class,(bool)x[2].s_bool,(QString*)x[3].s_class,(int*)x[4].s_class,(int*)x[5].s_class);
        x[0].s_bool = xret;
    }
    void x_28(Smoke::Stack x) {
        // bool setContent(const QByteArray&, QString*, int*, int*)
        bool xret = this->QDomDocument::setContent(*(const QByteArray*)x[1].s_class,(QString*)x[2].s_class,(int*)x[3].s_class,(int*)x[4].s_class);
        x[0].s_bool = xret;
    }
    void x_29(Smoke::Stack x) {
        // bool setContent(const QString&, QString*, int*, int*)
        bool xret = this->QDomDocument::setContent(*(const QString*)x[1].s_class,(QString*)x[2].s_class,(int*)x[3].s_class,(int*)x[4].s_class);
        x[0].s_bool = xret;
    }
    void x_30(Smoke::Stack x) {
        // bool setContent(QIODevice*, QString*, int*, int*)
        bool xret = this->QDomDocument::setContent((QIODevice*)x[1].s_class,(QString*)x[2].s_class,(int*)x[3].s_class,(int*)x[4].s_class);
        x[0].s_bool = xret;
    }
    void x_31(Smoke::Stack x) {
        // bool setContent(QXmlInputSource*, QXmlReader*, QString*, int*, int*)
        bool xret = this->QDomDocument::setContent((QXmlInputSource*)x[1].s_class,(QXmlReader*)x[2].s_class,(QString*)x[3].s_class,(int*)x[4].s_class,(int*)x[5].s_class);
        x[0].s_bool = xret;
    }
    void x_32(Smoke::Stack x) {
        // QString toString(int) const
        QString xret = ((const x_QDomDocument*)this)->QDomDocument::toString((int)x[1].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_33(Smoke::Stack x) {
        // QByteArray toByteArray(int) const
        QByteArray xret = ((const x_QDomDocument*)this)->QDomDocument::toByteArray((int)x[1].s_int);
        x[0].s_class = (void*)new QByteArray(xret);
    }
    void x_34(Smoke::Stack x) {
        // bool setContent(const QByteArray&, bool)
        bool xret = this->QDomDocument::setContent(*(const QByteArray*)x[1].s_class,(bool)x[2].s_bool,(QString*)0,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_35(Smoke::Stack x) {
        // bool setContent(const QByteArray&, bool, QString*)
        bool xret = this->QDomDocument::setContent(*(const QByteArray*)x[1].s_class,(bool)x[2].s_bool,(QString*)x[3].s_class,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_36(Smoke::Stack x) {
        // bool setContent(const QByteArray&, bool, QString*, int*)
        bool xret = this->QDomDocument::setContent(*(const QByteArray*)x[1].s_class,(bool)x[2].s_bool,(QString*)x[3].s_class,(int*)x[4].s_class,(int*)0);
        x[0].s_bool = xret;
    }
    void x_37(Smoke::Stack x) {
        // bool setContent(const QString&, bool)
        bool xret = this->QDomDocument::setContent(*(const QString*)x[1].s_class,(bool)x[2].s_bool,(QString*)0,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_38(Smoke::Stack x) {
        // bool setContent(const QString&, bool, QString*)
        bool xret = this->QDomDocument::setContent(*(const QString*)x[1].s_class,(bool)x[2].s_bool,(QString*)x[3].s_class,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_39(Smoke::Stack x) {
        // bool setContent(const QString&, bool, QString*, int*)
        bool xret = this->QDomDocument::setContent(*(const QString*)x[1].s_class,(bool)x[2].s_bool,(QString*)x[3].s_class,(int*)x[4].s_class,(int*)0);
        x[0].s_bool = xret;
    }
    void x_40(Smoke::Stack x) {
        // bool setContent(QIODevice*, bool)
        bool xret = this->QDomDocument::setContent((QIODevice*)x[1].s_class,(bool)x[2].s_bool,(QString*)0,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_41(Smoke::Stack x) {
        // bool setContent(QIODevice*, bool, QString*)
        bool xret = this->QDomDocument::setContent((QIODevice*)x[1].s_class,(bool)x[2].s_bool,(QString*)x[3].s_class,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_42(Smoke::Stack x) {
        // bool setContent(QIODevice*, bool, QString*, int*)
        bool xret = this->QDomDocument::setContent((QIODevice*)x[1].s_class,(bool)x[2].s_bool,(QString*)x[3].s_class,(int*)x[4].s_class,(int*)0);
        x[0].s_bool = xret;
    }
    void x_43(Smoke::Stack x) {
        // bool setContent(QXmlInputSource*, bool)
        bool xret = this->QDomDocument::setContent((QXmlInputSource*)x[1].s_class,(bool)x[2].s_bool,(QString*)0,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_44(Smoke::Stack x) {
        // bool setContent(QXmlInputSource*, bool, QString*)
        bool xret = this->QDomDocument::setContent((QXmlInputSource*)x[1].s_class,(bool)x[2].s_bool,(QString*)x[3].s_class,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_45(Smoke::Stack x) {
        // bool setContent(QXmlInputSource*, bool, QString*, int*)
        bool xret = this->QDomDocument::setContent((QXmlInputSource*)x[1].s_class,(bool)x[2].s_bool,(QString*)x[3].s_class,(int*)x[4].s_class,(int*)0);
        x[0].s_bool = xret;
    }
    void x_46(Smoke::Stack x) {
        // bool setContent(const QByteArray&)
        bool xret = this->QDomDocument::setContent(*(const QByteArray*)x[1].s_class,(QString*)0,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_47(Smoke::Stack x) {
        // bool setContent(const QByteArray&, QString*)
        bool xret = this->QDomDocument::setContent(*(const QByteArray*)x[1].s_class,(QString*)x[2].s_class,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_48(Smoke::Stack x) {
        // bool setContent(const QByteArray&, QString*, int*)
        bool xret = this->QDomDocument::setContent(*(const QByteArray*)x[1].s_class,(QString*)x[2].s_class,(int*)x[3].s_class,(int*)0);
        x[0].s_bool = xret;
    }
    void x_49(Smoke::Stack x) {
        // bool setContent(const QString&)
        bool xret = this->QDomDocument::setContent(*(const QString*)x[1].s_class,(QString*)0,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_50(Smoke::Stack x) {
        // bool setContent(const QString&, QString*)
        bool xret = this->QDomDocument::setContent(*(const QString*)x[1].s_class,(QString*)x[2].s_class,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_51(Smoke::Stack x) {
        // bool setContent(const QString&, QString*, int*)
        bool xret = this->QDomDocument::setContent(*(const QString*)x[1].s_class,(QString*)x[2].s_class,(int*)x[3].s_class,(int*)0);
        x[0].s_bool = xret;
    }
    void x_52(Smoke::Stack x) {
        // bool setContent(QIODevice*)
        bool xret = this->QDomDocument::setContent((QIODevice*)x[1].s_class,(QString*)0,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_53(Smoke::Stack x) {
        // bool setContent(QIODevice*, QString*)
        bool xret = this->QDomDocument::setContent((QIODevice*)x[1].s_class,(QString*)x[2].s_class,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_54(Smoke::Stack x) {
        // bool setContent(QIODevice*, QString*, int*)
        bool xret = this->QDomDocument::setContent((QIODevice*)x[1].s_class,(QString*)x[2].s_class,(int*)x[3].s_class,(int*)0);
        x[0].s_bool = xret;
    }
    void x_55(Smoke::Stack x) {
        // bool setContent(QXmlInputSource*, QXmlReader*)
        bool xret = this->QDomDocument::setContent((QXmlInputSource*)x[1].s_class,(QXmlReader*)x[2].s_class,(QString*)0,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_56(Smoke::Stack x) {
        // bool setContent(QXmlInputSource*, QXmlReader*, QString*)
        bool xret = this->QDomDocument::setContent((QXmlInputSource*)x[1].s_class,(QXmlReader*)x[2].s_class,(QString*)x[3].s_class,(int*)0,(int*)0);
        x[0].s_bool = xret;
    }
    void x_57(Smoke::Stack x) {
        // bool setContent(QXmlInputSource*, QXmlReader*, QString*, int*)
        bool xret = this->QDomDocument::setContent((QXmlInputSource*)x[1].s_class,(QXmlReader*)x[2].s_class,(QString*)x[3].s_class,(int*)x[4].s_class,(int*)0);
        x[0].s_bool = xret;
    }
    void x_58(Smoke::Stack x) {
        // QString toString() const
        QString xret = ((const x_QDomDocument*)this)->QDomDocument::toString((int)1);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_59(Smoke::Stack x) {
        // QByteArray toByteArray() const
        QByteArray xret = ((const x_QDomDocument*)this)->QDomDocument::toByteArray((int)1);
        x[0].s_class = (void*)new QByteArray(xret);
    }
    ~x_QDomDocument() { this->_binding->deleted(8, (void*)this); }
};
void xcall_QDomDocument(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomDocument *xself = (x_QDomDocument*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomDocument::x_1(args);	break;
        case 2: x_QDomDocument::x_2(args);	break;
        case 3: x_QDomDocument::x_3(args);	break;
        case 4: x_QDomDocument::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: xself->x_52(args);	break;
        case 53: xself->x_53(args);	break;
        case 54: xself->x_54(args);	break;
        case 55: xself->x_55(args);	break;
        case 56: xself->x_56(args);	break;
        case 57: xself->x_57(args);	break;
        case 58: xself->x_58(args);	break;
        case 59: xself->x_59(args);	break;
        case 60: delete (QDomDocument*)xself;	break;
    }
}
class x_QDomDocumentFragment : public QDomDocumentFragment {
    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) {
        // QDomDocumentFragment* QDomDocumentFragment()
        x_QDomDocumentFragment* xret = new x_QDomDocumentFragment();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomDocumentFragment() : QDomDocumentFragment() {}
    static void x_2(Smoke::Stack x) {
        // QDomDocumentFragment* QDomDocumentFragment(const QDomDocumentFragment&)
        x_QDomDocumentFragment* xret = new x_QDomDocumentFragment(*(const QDomDocumentFragment*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomDocumentFragment(const QDomDocumentFragment& x1) : QDomDocumentFragment(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomDocumentFragment& operator=(const QDomDocumentFragment&)
        QDomDocumentFragment& xret = this->QDomDocumentFragment::operator=(*(const QDomDocumentFragment*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // QDomNode::NodeType nodeType() const
        QDomNode::NodeType xret = ((const x_QDomDocumentFragment*)this)->QDomDocumentFragment::nodeType();
        x[0].s_enum = xret;
    }
    ~x_QDomDocumentFragment() { this->_binding->deleted(9, (void*)this); }
};
void xcall_QDomDocumentFragment(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomDocumentFragment *xself = (x_QDomDocumentFragment*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomDocumentFragment::x_1(args);	break;
        case 2: x_QDomDocumentFragment::x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: delete (QDomDocumentFragment*)xself;	break;
    }
}
class x_QDomDocumentType : public QDomDocumentType {
    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) {
        // QDomDocumentType* QDomDocumentType()
        x_QDomDocumentType* xret = new x_QDomDocumentType();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomDocumentType() : QDomDocumentType() {}
    static void x_2(Smoke::Stack x) {
        // QDomDocumentType* QDomDocumentType(const QDomDocumentType&)
        x_QDomDocumentType* xret = new x_QDomDocumentType(*(const QDomDocumentType*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomDocumentType(const QDomDocumentType& x1) : QDomDocumentType(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomDocumentType& operator=(const QDomDocumentType&)
        QDomDocumentType& xret = this->QDomDocumentType::operator=(*(const QDomDocumentType*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // QString name() const
        QString xret = ((const x_QDomDocumentType*)this)->QDomDocumentType::name();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_5(Smoke::Stack x) {
        // QDomNamedNodeMap entities() const
        QDomNamedNodeMap xret = ((const x_QDomDocumentType*)this)->QDomDocumentType::entities();
        x[0].s_class = (void*)new QDomNamedNodeMap(xret);
    }
    void x_6(Smoke::Stack x) {
        // QDomNamedNodeMap notations() const
        QDomNamedNodeMap xret = ((const x_QDomDocumentType*)this)->QDomDocumentType::notations();
        x[0].s_class = (void*)new QDomNamedNodeMap(xret);
    }
    void x_7(Smoke::Stack x) {
        // QString publicId() const
        QString xret = ((const x_QDomDocumentType*)this)->QDomDocumentType::publicId();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_8(Smoke::Stack x) {
        // QString systemId() const
        QString xret = ((const x_QDomDocumentType*)this)->QDomDocumentType::systemId();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_9(Smoke::Stack x) {
        // QString internalSubset() const
        QString xret = ((const x_QDomDocumentType*)this)->QDomDocumentType::internalSubset();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_10(Smoke::Stack x) {
        // QDomNode::NodeType nodeType() const
        QDomNode::NodeType xret = ((const x_QDomDocumentType*)this)->QDomDocumentType::nodeType();
        x[0].s_enum = xret;
    }
    ~x_QDomDocumentType() { this->_binding->deleted(10, (void*)this); }
};
void xcall_QDomDocumentType(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomDocumentType *xself = (x_QDomDocumentType*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomDocumentType::x_1(args);	break;
        case 2: x_QDomDocumentType::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: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: xself->x_10(args);	break;
        case 11: delete (QDomDocumentType*)xself;	break;
    }
}
class x_QDomElement : public QDomElement {
    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) {
        // QDomElement* QDomElement()
        x_QDomElement* xret = new x_QDomElement();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomElement() : QDomElement() {}
    static void x_2(Smoke::Stack x) {
        // QDomElement* QDomElement(const QDomElement&)
        x_QDomElement* xret = new x_QDomElement(*(const QDomElement*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomElement(const QDomElement& x1) : QDomElement(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomElement& operator=(const QDomElement&)
        QDomElement& xret = this->QDomElement::operator=(*(const QDomElement*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // QString attribute(const QString&, const QString&) const
        QString xret = ((const x_QDomElement*)this)->QDomElement::attribute(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_5(Smoke::Stack x) {
        // void setAttribute(const QString&, const QString&)
        this->QDomElement::setAttribute(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_6(Smoke::Stack x) {
        // void setAttribute(const QString&, long long)
        this->QDomElement::setAttribute(*(const QString*)x[1].s_class,*(long long*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_7(Smoke::Stack x) {
        // void setAttribute(const QString&, unsigned long long)
        this->QDomElement::setAttribute(*(const QString*)x[1].s_class,*(unsigned long long*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_8(Smoke::Stack x) {
        // void setAttribute(const QString&, int)
        this->QDomElement::setAttribute(*(const QString*)x[1].s_class,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_9(Smoke::Stack x) {
        // void setAttribute(const QString&, unsigned int)
        this->QDomElement::setAttribute(*(const QString*)x[1].s_class,(unsigned int)x[2].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // void setAttribute(const QString&, float)
        this->QDomElement::setAttribute(*(const QString*)x[1].s_class,(float)x[2].s_float);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void setAttribute(const QString&, double)
        this->QDomElement::setAttribute(*(const QString*)x[1].s_class,(double)x[2].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // void removeAttribute(const QString&)
        this->QDomElement::removeAttribute(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // QDomAttr attributeNode(const QString&)
        QDomAttr xret = this->QDomElement::attributeNode(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomAttr(xret);
    }
    void x_14(Smoke::Stack x) {
        // QDomAttr setAttributeNode(const QDomAttr&)
        QDomAttr xret = this->QDomElement::setAttributeNode(*(const QDomAttr*)x[1].s_class);
        x[0].s_class = (void*)new QDomAttr(xret);
    }
    void x_15(Smoke::Stack x) {
        // QDomAttr removeAttributeNode(const QDomAttr&)
        QDomAttr xret = this->QDomElement::removeAttributeNode(*(const QDomAttr*)x[1].s_class);
        x[0].s_class = (void*)new QDomAttr(xret);
    }
    void x_16(Smoke::Stack x) {
        // QDomNodeList elementsByTagName(const QString&) const
        QDomNodeList xret = ((const x_QDomElement*)this)->QDomElement::elementsByTagName(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomNodeList(xret);
    }
    void x_17(Smoke::Stack x) {
        // bool hasAttribute(const QString&) const
        bool xret = ((const x_QDomElement*)this)->QDomElement::hasAttribute(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_18(Smoke::Stack x) {
        // QString attributeNS(const QString, const QString&, const QString&) const
        QString xret = ((const x_QDomElement*)this)->QDomElement::attributeNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_19(Smoke::Stack x) {
        // void setAttributeNS(const QString, const QString&, const QString&)
        this->QDomElement::setAttributeNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_20(Smoke::Stack x) {
        // void setAttributeNS(const QString, const QString&, int)
        this->QDomElement::setAttributeNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,(int)x[3].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_21(Smoke::Stack x) {
        // void setAttributeNS(const QString, const QString&, unsigned int)
        this->QDomElement::setAttributeNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,(unsigned int)x[3].s_uint);
        (void)x; // noop (for compiler warning)
    }
    void x_22(Smoke::Stack x) {
        // void setAttributeNS(const QString, const QString&, long long)
        this->QDomElement::setAttributeNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(long long*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // void setAttributeNS(const QString, const QString&, unsigned long long)
        this->QDomElement::setAttributeNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(unsigned long long*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_24(Smoke::Stack x) {
        // void setAttributeNS(const QString, const QString&, double)
        this->QDomElement::setAttributeNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,(double)x[3].s_double);
        (void)x; // noop (for compiler warning)
    }
    void x_25(Smoke::Stack x) {
        // void removeAttributeNS(const QString&, const QString&)
        this->QDomElement::removeAttributeNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_26(Smoke::Stack x) {
        // QDomAttr attributeNodeNS(const QString&, const QString&)
        QDomAttr xret = this->QDomElement::attributeNodeNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_class = (void*)new QDomAttr(xret);
    }
    void x_27(Smoke::Stack x) {
        // QDomAttr setAttributeNodeNS(const QDomAttr&)
        QDomAttr xret = this->QDomElement::setAttributeNodeNS(*(const QDomAttr*)x[1].s_class);
        x[0].s_class = (void*)new QDomAttr(xret);
    }
    void x_28(Smoke::Stack x) {
        // QDomNodeList elementsByTagNameNS(const QString&, const QString&) const
        QDomNodeList xret = ((const x_QDomElement*)this)->QDomElement::elementsByTagNameNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_class = (void*)new QDomNodeList(xret);
    }
    void x_29(Smoke::Stack x) {
        // bool hasAttributeNS(const QString&, const QString&) const
        bool xret = ((const x_QDomElement*)this)->QDomElement::hasAttributeNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_30(Smoke::Stack x) {
        // QString tagName() const
        QString xret = ((const x_QDomElement*)this)->QDomElement::tagName();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_31(Smoke::Stack x) {
        // void setTagName(const QString&)
        this->QDomElement::setTagName(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_32(Smoke::Stack x) {
        // QDomNamedNodeMap attributes() const
        QDomNamedNodeMap xret = ((const x_QDomElement*)this)->QDomElement::attributes();
        x[0].s_class = (void*)new QDomNamedNodeMap(xret);
    }
    void x_33(Smoke::Stack x) {
        // QDomNode::NodeType nodeType() const
        QDomNode::NodeType xret = ((const x_QDomElement*)this)->QDomElement::nodeType();
        x[0].s_enum = xret;
    }
    void x_34(Smoke::Stack x) {
        // QString text() const
        QString xret = ((const x_QDomElement*)this)->QDomElement::text();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_35(Smoke::Stack x) {
        // QString attribute(const QString&) const
        QString xret = ((const x_QDomElement*)this)->QDomElement::attribute(*(const QString*)x[1].s_class,(const QString&)QString());
        x[0].s_class = (void*)new QString(xret);
    }
    void x_36(Smoke::Stack x) {
        // QString attributeNS(const QString, const QString&) const
        QString xret = ((const x_QDomElement*)this)->QDomElement::attributeNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,(const QString&)QString());
        x[0].s_class = (void*)new QString(xret);
    }
    ~x_QDomElement() { this->_binding->deleted(11, (void*)this); }
};
void xcall_QDomElement(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomElement *xself = (x_QDomElement*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomElement::x_1(args);	break;
        case 2: x_QDomElement::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: 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: delete (QDomElement*)xself;	break;
    }
}
class x_QDomEntity : public QDomEntity {
    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) {
        // QDomEntity* QDomEntity()
        x_QDomEntity* xret = new x_QDomEntity();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomEntity() : QDomEntity() {}
    static void x_2(Smoke::Stack x) {
        // QDomEntity* QDomEntity(const QDomEntity&)
        x_QDomEntity* xret = new x_QDomEntity(*(const QDomEntity*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomEntity(const QDomEntity& x1) : QDomEntity(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomEntity& operator=(const QDomEntity&)
        QDomEntity& xret = this->QDomEntity::operator=(*(const QDomEntity*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // QString publicId() const
        QString xret = ((const x_QDomEntity*)this)->QDomEntity::publicId();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_5(Smoke::Stack x) {
        // QString systemId() const
        QString xret = ((const x_QDomEntity*)this)->QDomEntity::systemId();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_6(Smoke::Stack x) {
        // QString notationName() const
        QString xret = ((const x_QDomEntity*)this)->QDomEntity::notationName();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_7(Smoke::Stack x) {
        // QDomNode::NodeType nodeType() const
        QDomNode::NodeType xret = ((const x_QDomEntity*)this)->QDomEntity::nodeType();
        x[0].s_enum = xret;
    }
    ~x_QDomEntity() { this->_binding->deleted(12, (void*)this); }
};
void xcall_QDomEntity(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomEntity *xself = (x_QDomEntity*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomEntity::x_1(args);	break;
        case 2: x_QDomEntity::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: delete (QDomEntity*)xself;	break;
    }
}
class x_QDomEntityReference : public QDomEntityReference {
    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) {
        // QDomEntityReference* QDomEntityReference()
        x_QDomEntityReference* xret = new x_QDomEntityReference();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomEntityReference() : QDomEntityReference() {}
    static void x_2(Smoke::Stack x) {
        // QDomEntityReference* QDomEntityReference(const QDomEntityReference&)
        x_QDomEntityReference* xret = new x_QDomEntityReference(*(const QDomEntityReference*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomEntityReference(const QDomEntityReference& x1) : QDomEntityReference(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomEntityReference& operator=(const QDomEntityReference&)
        QDomEntityReference& xret = this->QDomEntityReference::operator=(*(const QDomEntityReference*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // QDomNode::NodeType nodeType() const
        QDomNode::NodeType xret = ((const x_QDomEntityReference*)this)->QDomEntityReference::nodeType();
        x[0].s_enum = xret;
    }
    ~x_QDomEntityReference() { this->_binding->deleted(13, (void*)this); }
};
void xcall_QDomEntityReference(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomEntityReference *xself = (x_QDomEntityReference*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomEntityReference::x_1(args);	break;
        case 2: x_QDomEntityReference::x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: delete (QDomEntityReference*)xself;	break;
    }
}
class x_QDomImplementation : public QDomImplementation {
    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) {
        // QDomImplementation* QDomImplementation()
        x_QDomImplementation* xret = new x_QDomImplementation();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomImplementation() : QDomImplementation() {}
    static void x_2(Smoke::Stack x) {
        // QDomImplementation* QDomImplementation(const QDomImplementation&)
        x_QDomImplementation* xret = new x_QDomImplementation(*(const QDomImplementation*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomImplementation(const QDomImplementation& x1) : QDomImplementation(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomImplementation& operator=(const QDomImplementation&)
        QDomImplementation& xret = this->QDomImplementation::operator=(*(const QDomImplementation*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // bool operator==(const QDomImplementation&) const
        bool xret = ((const x_QDomImplementation*)this)->QDomImplementation::operator==(*(const QDomImplementation*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_5(Smoke::Stack x) {
        // bool operator!=(const QDomImplementation&) const
        bool xret = ((const x_QDomImplementation*)this)->QDomImplementation::operator!=(*(const QDomImplementation*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_6(Smoke::Stack x) {
        // bool hasFeature(const QString&, const QString&) const
        bool xret = ((const x_QDomImplementation*)this)->QDomImplementation::hasFeature(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_7(Smoke::Stack x) {
        // QDomDocumentType createDocumentType(const QString&, const QString&, const QString&)
        QDomDocumentType xret = this->QDomImplementation::createDocumentType(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
        x[0].s_class = (void*)new QDomDocumentType(xret);
    }
    void x_8(Smoke::Stack x) {
        // QDomDocument createDocument(const QString&, const QString&, const QDomDocumentType&)
        QDomDocument xret = this->QDomImplementation::createDocument(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QDomDocumentType*)x[3].s_class);
        x[0].s_class = (void*)new QDomDocument(xret);
    }
    static void x_9(Smoke::Stack x) {
        // static QDomImplementation::InvalidDataPolicy invalidDataPolicy()
        QDomImplementation::InvalidDataPolicy xret = QDomImplementation::invalidDataPolicy();
        x[0].s_enum = xret;
    }
    static void x_10(Smoke::Stack x) {
        // static void setInvalidDataPolicy(QDomImplementation::InvalidDataPolicy)
        QDomImplementation::setInvalidDataPolicy((QDomImplementation::InvalidDataPolicy)x[1].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // bool isNull()
        bool xret = this->QDomImplementation::isNull();
        x[0].s_bool = xret;
    }
    static void x_12(Smoke::Stack x) {
        x[0].s_enum = (long)QDomImplementation::AcceptInvalidChars;
    }
    static void x_13(Smoke::Stack x) {
        x[0].s_enum = (long)QDomImplementation::DropInvalidChars;
    }
    static void x_14(Smoke::Stack x) {
        x[0].s_enum = (long)QDomImplementation::ReturnNullNode;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 38: //QDomImplementation::InvalidDataPolicy
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QDomImplementation::InvalidDataPolicy;
                    break;
                case Smoke::EnumDelete:
                    delete (QDomImplementation::InvalidDataPolicy*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QDomImplementation::InvalidDataPolicy*)xdata = (QDomImplementation::InvalidDataPolicy)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QDomImplementation::InvalidDataPolicy*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QDomImplementation() { this->_binding->deleted(14, (void*)this); }
};
void xenum_QDomImplementation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QDomImplementation::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QDomImplementation(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomImplementation *xself = (x_QDomImplementation*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomImplementation::x_1(args);	break;
        case 2: x_QDomImplementation::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: xself->x_8(args);	break;
        case 9: x_QDomImplementation::x_9(args);	break;
        case 10: x_QDomImplementation::x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: x_QDomImplementation::x_12(args);	break;
        case 13: x_QDomImplementation::x_13(args);	break;
        case 14: x_QDomImplementation::x_14(args);	break;
        case 15: delete (QDomImplementation*)xself;	break;
    }
}
class x_QDomNamedNodeMap : public QDomNamedNodeMap {
    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) {
        // QDomNamedNodeMap* QDomNamedNodeMap()
        x_QDomNamedNodeMap* xret = new x_QDomNamedNodeMap();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomNamedNodeMap() : QDomNamedNodeMap() {}
    static void x_2(Smoke::Stack x) {
        // QDomNamedNodeMap* QDomNamedNodeMap(const QDomNamedNodeMap&)
        x_QDomNamedNodeMap* xret = new x_QDomNamedNodeMap(*(const QDomNamedNodeMap*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomNamedNodeMap(const QDomNamedNodeMap& x1) : QDomNamedNodeMap(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomNamedNodeMap& operator=(const QDomNamedNodeMap&)
        QDomNamedNodeMap& xret = this->QDomNamedNodeMap::operator=(*(const QDomNamedNodeMap*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // bool operator==(const QDomNamedNodeMap&) const
        bool xret = ((const x_QDomNamedNodeMap*)this)->QDomNamedNodeMap::operator==(*(const QDomNamedNodeMap*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_5(Smoke::Stack x) {
        // bool operator!=(const QDomNamedNodeMap&) const
        bool xret = ((const x_QDomNamedNodeMap*)this)->QDomNamedNodeMap::operator!=(*(const QDomNamedNodeMap*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_6(Smoke::Stack x) {
        // QDomNode namedItem(const QString&) const
        QDomNode xret = ((const x_QDomNamedNodeMap*)this)->QDomNamedNodeMap::namedItem(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_7(Smoke::Stack x) {
        // QDomNode setNamedItem(const QDomNode&)
        QDomNode xret = this->QDomNamedNodeMap::setNamedItem(*(const QDomNode*)x[1].s_class);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_8(Smoke::Stack x) {
        // QDomNode removeNamedItem(const QString&)
        QDomNode xret = this->QDomNamedNodeMap::removeNamedItem(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_9(Smoke::Stack x) {
        // QDomNode item(int) const
        QDomNode xret = ((const x_QDomNamedNodeMap*)this)->QDomNamedNodeMap::item((int)x[1].s_int);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_10(Smoke::Stack x) {
        // QDomNode namedItemNS(const QString&, const QString&) const
        QDomNode xret = ((const x_QDomNamedNodeMap*)this)->QDomNamedNodeMap::namedItemNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_11(Smoke::Stack x) {
        // QDomNode setNamedItemNS(const QDomNode&)
        QDomNode xret = this->QDomNamedNodeMap::setNamedItemNS(*(const QDomNode*)x[1].s_class);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_12(Smoke::Stack x) {
        // QDomNode removeNamedItemNS(const QString&, const QString&)
        QDomNode xret = this->QDomNamedNodeMap::removeNamedItemNS(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_13(Smoke::Stack x) {
        // unsigned int length() const
        unsigned int xret = ((const x_QDomNamedNodeMap*)this)->QDomNamedNodeMap::length();
        x[0].s_uint = xret;
    }
    void x_14(Smoke::Stack x) {
        // int count() const
        int xret = ((const x_QDomNamedNodeMap*)this)->QDomNamedNodeMap::count();
        x[0].s_int = xret;
    }
    void x_15(Smoke::Stack x) {
        // int size() const
        int xret = ((const x_QDomNamedNodeMap*)this)->QDomNamedNodeMap::size();
        x[0].s_int = xret;
    }
    void x_16(Smoke::Stack x) {
        // bool isEmpty() const
        bool xret = ((const x_QDomNamedNodeMap*)this)->QDomNamedNodeMap::isEmpty();
        x[0].s_bool = xret;
    }
    void x_17(Smoke::Stack x) {
        // bool contains(const QString&) const
        bool xret = ((const x_QDomNamedNodeMap*)this)->QDomNamedNodeMap::contains(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    ~x_QDomNamedNodeMap() { this->_binding->deleted(15, (void*)this); }
};
void xcall_QDomNamedNodeMap(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomNamedNodeMap *xself = (x_QDomNamedNodeMap*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomNamedNodeMap::x_1(args);	break;
        case 2: x_QDomNamedNodeMap::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: 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: delete (QDomNamedNodeMap*)xself;	break;
    }
}
class x_QDomNode : public QDomNode {
    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) {
        // QDomNode* QDomNode()
        x_QDomNode* xret = new x_QDomNode();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomNode() : QDomNode() {}
    static void x_2(Smoke::Stack x) {
        // QDomNode* QDomNode(const QDomNode&)
        x_QDomNode* xret = new x_QDomNode(*(const QDomNode*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomNode(const QDomNode& x1) : QDomNode(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomNode& operator=(const QDomNode&)
        QDomNode& xret = this->QDomNode::operator=(*(const QDomNode*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // bool operator==(const QDomNode&) const
        bool xret = ((const x_QDomNode*)this)->QDomNode::operator==(*(const QDomNode*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_5(Smoke::Stack x) {
        // bool operator!=(const QDomNode&) const
        bool xret = ((const x_QDomNode*)this)->QDomNode::operator!=(*(const QDomNode*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_6(Smoke::Stack x) {
        // QDomNode insertBefore(const QDomNode&, const QDomNode&)
        QDomNode xret = this->QDomNode::insertBefore(*(const QDomNode*)x[1].s_class,*(const QDomNode*)x[2].s_class);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_7(Smoke::Stack x) {
        // QDomNode insertAfter(const QDomNode&, const QDomNode&)
        QDomNode xret = this->QDomNode::insertAfter(*(const QDomNode*)x[1].s_class,*(const QDomNode*)x[2].s_class);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_8(Smoke::Stack x) {
        // QDomNode replaceChild(const QDomNode&, const QDomNode&)
        QDomNode xret = this->QDomNode::replaceChild(*(const QDomNode*)x[1].s_class,*(const QDomNode*)x[2].s_class);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_9(Smoke::Stack x) {
        // QDomNode removeChild(const QDomNode&)
        QDomNode xret = this->QDomNode::removeChild(*(const QDomNode*)x[1].s_class);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_10(Smoke::Stack x) {
        // QDomNode appendChild(const QDomNode&)
        QDomNode xret = this->QDomNode::appendChild(*(const QDomNode*)x[1].s_class);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_11(Smoke::Stack x) {
        // bool hasChildNodes() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::hasChildNodes();
        x[0].s_bool = xret;
    }
    void x_12(Smoke::Stack x) {
        // QDomNode cloneNode(bool) const
        QDomNode xret = ((const x_QDomNode*)this)->QDomNode::cloneNode((bool)x[1].s_bool);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_13(Smoke::Stack x) {
        // void normalize()
        this->QDomNode::normalize();
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // bool isSupported(const QString&, const QString&) const
        bool xret = ((const x_QDomNode*)this)->QDomNode::isSupported(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_15(Smoke::Stack x) {
        // QString nodeName() const
        QString xret = ((const x_QDomNode*)this)->QDomNode::nodeName();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_16(Smoke::Stack x) {
        // QDomNode::NodeType nodeType() const
        QDomNode::NodeType xret = ((const x_QDomNode*)this)->QDomNode::nodeType();
        x[0].s_enum = xret;
    }
    void x_17(Smoke::Stack x) {
        // QDomNode parentNode() const
        QDomNode xret = ((const x_QDomNode*)this)->QDomNode::parentNode();
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_18(Smoke::Stack x) {
        // QDomNodeList childNodes() const
        QDomNodeList xret = ((const x_QDomNode*)this)->QDomNode::childNodes();
        x[0].s_class = (void*)new QDomNodeList(xret);
    }
    void x_19(Smoke::Stack x) {
        // QDomNode firstChild() const
        QDomNode xret = ((const x_QDomNode*)this)->QDomNode::firstChild();
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_20(Smoke::Stack x) {
        // QDomNode lastChild() const
        QDomNode xret = ((const x_QDomNode*)this)->QDomNode::lastChild();
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_21(Smoke::Stack x) {
        // QDomNode previousSibling() const
        QDomNode xret = ((const x_QDomNode*)this)->QDomNode::previousSibling();
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_22(Smoke::Stack x) {
        // QDomNode nextSibling() const
        QDomNode xret = ((const x_QDomNode*)this)->QDomNode::nextSibling();
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_23(Smoke::Stack x) {
        // QDomNamedNodeMap attributes() const
        QDomNamedNodeMap xret = ((const x_QDomNode*)this)->QDomNode::attributes();
        x[0].s_class = (void*)new QDomNamedNodeMap(xret);
    }
    void x_24(Smoke::Stack x) {
        // QDomDocument ownerDocument() const
        QDomDocument xret = ((const x_QDomNode*)this)->QDomNode::ownerDocument();
        x[0].s_class = (void*)new QDomDocument(xret);
    }
    void x_25(Smoke::Stack x) {
        // QString namespaceURI() const
        QString xret = ((const x_QDomNode*)this)->QDomNode::namespaceURI();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_26(Smoke::Stack x) {
        // QString localName() const
        QString xret = ((const x_QDomNode*)this)->QDomNode::localName();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_27(Smoke::Stack x) {
        // bool hasAttributes() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::hasAttributes();
        x[0].s_bool = xret;
    }
    void x_28(Smoke::Stack x) {
        // QString nodeValue() const
        QString xret = ((const x_QDomNode*)this)->QDomNode::nodeValue();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_29(Smoke::Stack x) {
        // void setNodeValue(const QString&)
        this->QDomNode::setNodeValue(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_30(Smoke::Stack x) {
        // QString prefix() const
        QString xret = ((const x_QDomNode*)this)->QDomNode::prefix();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_31(Smoke::Stack x) {
        // void setPrefix(const QString&)
        this->QDomNode::setPrefix(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_32(Smoke::Stack x) {
        // bool isAttr() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::isAttr();
        x[0].s_bool = xret;
    }
    void x_33(Smoke::Stack x) {
        // bool isCDATASection() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::isCDATASection();
        x[0].s_bool = xret;
    }
    void x_34(Smoke::Stack x) {
        // bool isDocumentFragment() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::isDocumentFragment();
        x[0].s_bool = xret;
    }
    void x_35(Smoke::Stack x) {
        // bool isDocument() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::isDocument();
        x[0].s_bool = xret;
    }
    void x_36(Smoke::Stack x) {
        // bool isDocumentType() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::isDocumentType();
        x[0].s_bool = xret;
    }
    void x_37(Smoke::Stack x) {
        // bool isElement() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::isElement();
        x[0].s_bool = xret;
    }
    void x_38(Smoke::Stack x) {
        // bool isEntityReference() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::isEntityReference();
        x[0].s_bool = xret;
    }
    void x_39(Smoke::Stack x) {
        // bool isText() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::isText();
        x[0].s_bool = xret;
    }
    void x_40(Smoke::Stack x) {
        // bool isEntity() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::isEntity();
        x[0].s_bool = xret;
    }
    void x_41(Smoke::Stack x) {
        // bool isNotation() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::isNotation();
        x[0].s_bool = xret;
    }
    void x_42(Smoke::Stack x) {
        // bool isProcessingInstruction() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::isProcessingInstruction();
        x[0].s_bool = xret;
    }
    void x_43(Smoke::Stack x) {
        // bool isCharacterData() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::isCharacterData();
        x[0].s_bool = xret;
    }
    void x_44(Smoke::Stack x) {
        // bool isComment() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::isComment();
        x[0].s_bool = xret;
    }
    void x_45(Smoke::Stack x) {
        // QDomNode namedItem(const QString&) const
        QDomNode xret = ((const x_QDomNode*)this)->QDomNode::namedItem(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_46(Smoke::Stack x) {
        // bool isNull() const
        bool xret = ((const x_QDomNode*)this)->QDomNode::isNull();
        x[0].s_bool = xret;
    }
    void x_47(Smoke::Stack x) {
        // void clear()
        this->QDomNode::clear();
        (void)x; // noop (for compiler warning)
    }
    void x_48(Smoke::Stack x) {
        // QDomAttr toAttr() const
        QDomAttr xret = ((const x_QDomNode*)this)->QDomNode::toAttr();
        x[0].s_class = (void*)new QDomAttr(xret);
    }
    void x_49(Smoke::Stack x) {
        // QDomCDATASection toCDATASection() const
        QDomCDATASection xret = ((const x_QDomNode*)this)->QDomNode::toCDATASection();
        x[0].s_class = (void*)new QDomCDATASection(xret);
    }
    void x_50(Smoke::Stack x) {
        // QDomDocumentFragment toDocumentFragment() const
        QDomDocumentFragment xret = ((const x_QDomNode*)this)->QDomNode::toDocumentFragment();
        x[0].s_class = (void*)new QDomDocumentFragment(xret);
    }
    void x_51(Smoke::Stack x) {
        // QDomDocument toDocument() const
        QDomDocument xret = ((const x_QDomNode*)this)->QDomNode::toDocument();
        x[0].s_class = (void*)new QDomDocument(xret);
    }
    void x_52(Smoke::Stack x) {
        // QDomDocumentType toDocumentType() const
        QDomDocumentType xret = ((const x_QDomNode*)this)->QDomNode::toDocumentType();
        x[0].s_class = (void*)new QDomDocumentType(xret);
    }
    void x_53(Smoke::Stack x) {
        // QDomElement toElement() const
        QDomElement xret = ((const x_QDomNode*)this)->QDomNode::toElement();
        x[0].s_class = (void*)new QDomElement(xret);
    }
    void x_54(Smoke::Stack x) {
        // QDomEntityReference toEntityReference() const
        QDomEntityReference xret = ((const x_QDomNode*)this)->QDomNode::toEntityReference();
        x[0].s_class = (void*)new QDomEntityReference(xret);
    }
    void x_55(Smoke::Stack x) {
        // QDomText toText() const
        QDomText xret = ((const x_QDomNode*)this)->QDomNode::toText();
        x[0].s_class = (void*)new QDomText(xret);
    }
    void x_56(Smoke::Stack x) {
        // QDomEntity toEntity() const
        QDomEntity xret = ((const x_QDomNode*)this)->QDomNode::toEntity();
        x[0].s_class = (void*)new QDomEntity(xret);
    }
    void x_57(Smoke::Stack x) {
        // QDomNotation toNotation() const
        QDomNotation xret = ((const x_QDomNode*)this)->QDomNode::toNotation();
        x[0].s_class = (void*)new QDomNotation(xret);
    }
    void x_58(Smoke::Stack x) {
        // QDomProcessingInstruction toProcessingInstruction() const
        QDomProcessingInstruction xret = ((const x_QDomNode*)this)->QDomNode::toProcessingInstruction();
        x[0].s_class = (void*)new QDomProcessingInstruction(xret);
    }
    void x_59(Smoke::Stack x) {
        // QDomCharacterData toCharacterData() const
        QDomCharacterData xret = ((const x_QDomNode*)this)->QDomNode::toCharacterData();
        x[0].s_class = (void*)new QDomCharacterData(xret);
    }
    void x_60(Smoke::Stack x) {
        // QDomComment toComment() const
        QDomComment xret = ((const x_QDomNode*)this)->QDomNode::toComment();
        x[0].s_class = (void*)new QDomComment(xret);
    }
    void x_61(Smoke::Stack x) {
        // void save(QTextStream&, int) const
        ((const x_QDomNode*)this)->QDomNode::save(*(QTextStream*)x[1].s_class,(int)x[2].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_62(Smoke::Stack x) {
        // void save(QTextStream&, int, QDomNode::EncodingPolicy) const
        ((const x_QDomNode*)this)->QDomNode::save(*(QTextStream*)x[1].s_class,(int)x[2].s_int,(QDomNode::EncodingPolicy)x[3].s_enum);
        (void)x; // noop (for compiler warning)
    }
    void x_63(Smoke::Stack x) {
        // QDomElement firstChildElement(const QString&) const
        QDomElement xret = ((const x_QDomNode*)this)->QDomNode::firstChildElement(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomElement(xret);
    }
    void x_64(Smoke::Stack x) {
        // QDomElement lastChildElement(const QString&) const
        QDomElement xret = ((const x_QDomNode*)this)->QDomNode::lastChildElement(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomElement(xret);
    }
    void x_65(Smoke::Stack x) {
        // QDomElement previousSiblingElement(const QString&) const
        QDomElement xret = ((const x_QDomNode*)this)->QDomNode::previousSiblingElement(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomElement(xret);
    }
    void x_66(Smoke::Stack x) {
        // QDomElement nextSiblingElement(const QString&) const
        QDomElement xret = ((const x_QDomNode*)this)->QDomNode::nextSiblingElement(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QDomElement(xret);
    }
    void x_67(Smoke::Stack x) {
        // int lineNumber() const
        int xret = ((const x_QDomNode*)this)->QDomNode::lineNumber();
        x[0].s_int = xret;
    }
    void x_68(Smoke::Stack x) {
        // int columnNumber() const
        int xret = ((const x_QDomNode*)this)->QDomNode::columnNumber();
        x[0].s_int = xret;
    }
    void x_69(Smoke::Stack x) {
        // QDomNode cloneNode() const
        QDomNode xret = ((const x_QDomNode*)this)->QDomNode::cloneNode((bool)true);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_70(Smoke::Stack x) {
        // QDomElement firstChildElement() const
        QDomElement xret = ((const x_QDomNode*)this)->QDomNode::firstChildElement((const QString&)QString());
        x[0].s_class = (void*)new QDomElement(xret);
    }
    void x_71(Smoke::Stack x) {
        // QDomElement lastChildElement() const
        QDomElement xret = ((const x_QDomNode*)this)->QDomNode::lastChildElement((const QString&)QString());
        x[0].s_class = (void*)new QDomElement(xret);
    }
    void x_72(Smoke::Stack x) {
        // QDomElement previousSiblingElement() const
        QDomElement xret = ((const x_QDomNode*)this)->QDomNode::previousSiblingElement((const QString&)QString());
        x[0].s_class = (void*)new QDomElement(xret);
    }
    void x_73(Smoke::Stack x) {
        // QDomElement nextSiblingElement() const
        QDomElement xret = ((const x_QDomNode*)this)->QDomNode::nextSiblingElement((const QString&)QString());
        x[0].s_class = (void*)new QDomElement(xret);
    }
    void x_74(Smoke::Stack x) {
        // QDomNodePrivate* impl
        x[0].s_class = (void*)this->QDomNode::impl;
    }
    void x_75(Smoke::Stack x) {
        // QDomNodePrivate* impl=
        this->QDomNode::impl = (QDomNodePrivate*)x[1].s_class;
    }
    static void x_76(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::ElementNode;
    }
    static void x_77(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::AttributeNode;
    }
    static void x_78(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::TextNode;
    }
    static void x_79(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::CDATASectionNode;
    }
    static void x_80(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::EntityReferenceNode;
    }
    static void x_81(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::EntityNode;
    }
    static void x_82(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::ProcessingInstructionNode;
    }
    static void x_83(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::CommentNode;
    }
    static void x_84(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::DocumentNode;
    }
    static void x_85(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::DocumentTypeNode;
    }
    static void x_86(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::DocumentFragmentNode;
    }
    static void x_87(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::NotationNode;
    }
    static void x_88(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::BaseNode;
    }
    static void x_89(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::CharacterDataNode;
    }
    static void x_90(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::EncodingFromDocument;
    }
    static void x_91(Smoke::Stack x) {
        x[0].s_enum = (long)QDomNode::EncodingFromTextStream;
    }
    static void xenum_operation(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
        switch(xtype) {
        case 46: //QDomNode::NodeType
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QDomNode::NodeType;
                    break;
                case Smoke::EnumDelete:
                    delete (QDomNode::NodeType*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QDomNode::NodeType*)xdata = (QDomNode::NodeType)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QDomNode::NodeType*)xdata;
                    break;
            }
            break;
        case 45: //QDomNode::EncodingPolicy
            switch(xop) {
                case Smoke::EnumNew:
                    xdata = (void*)new QDomNode::EncodingPolicy;
                    break;
                case Smoke::EnumDelete:
                    delete (QDomNode::EncodingPolicy*)xdata;
                    break;
                case Smoke::EnumFromLong:
                    *(QDomNode::EncodingPolicy*)xdata = (QDomNode::EncodingPolicy)xvalue;
                    break;
                case Smoke::EnumToLong:
                    xvalue = (long)*(QDomNode::EncodingPolicy*)xdata;
                    break;
            }
            break;
        }
    }
    ~x_QDomNode() { this->_binding->deleted(16, (void*)this); }
};
void xenum_QDomNode(Smoke::EnumOperation xop, Smoke::Index xtype, void *&xdata, long &xvalue) {
    x_QDomNode::xenum_operation(xop, xtype, xdata, xvalue);
}
void xcall_QDomNode(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomNode *xself = (x_QDomNode*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomNode::x_1(args);	break;
        case 2: x_QDomNode::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: 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: xself->x_52(args);	break;
        case 53: xself->x_53(args);	break;
        case 54: xself->x_54(args);	break;
        case 55: xself->x_55(args);	break;
        case 56: xself->x_56(args);	break;
        case 57: xself->x_57(args);	break;
        case 58: xself->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: x_QDomNode::x_76(args);	break;
        case 77: x_QDomNode::x_77(args);	break;
        case 78: x_QDomNode::x_78(args);	break;
        case 79: x_QDomNode::x_79(args);	break;
        case 80: x_QDomNode::x_80(args);	break;
        case 81: x_QDomNode::x_81(args);	break;
        case 82: x_QDomNode::x_82(args);	break;
        case 83: x_QDomNode::x_83(args);	break;
        case 84: x_QDomNode::x_84(args);	break;
        case 85: x_QDomNode::x_85(args);	break;
        case 86: x_QDomNode::x_86(args);	break;
        case 87: x_QDomNode::x_87(args);	break;
        case 88: x_QDomNode::x_88(args);	break;
        case 89: x_QDomNode::x_89(args);	break;
        case 90: x_QDomNode::x_90(args);	break;
        case 91: x_QDomNode::x_91(args);	break;
        case 92: delete (QDomNode*)xself;	break;
    }
}
class x_QDomNodeList : public QDomNodeList {
    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) {
        // QDomNodeList* QDomNodeList()
        x_QDomNodeList* xret = new x_QDomNodeList();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomNodeList() : QDomNodeList() {}
    static void x_2(Smoke::Stack x) {
        // QDomNodeList* QDomNodeList(const QDomNodeList&)
        x_QDomNodeList* xret = new x_QDomNodeList(*(const QDomNodeList*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomNodeList(const QDomNodeList& x1) : QDomNodeList(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomNodeList& operator=(const QDomNodeList&)
        QDomNodeList& xret = this->QDomNodeList::operator=(*(const QDomNodeList*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // bool operator==(const QDomNodeList&) const
        bool xret = ((const x_QDomNodeList*)this)->QDomNodeList::operator==(*(const QDomNodeList*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_5(Smoke::Stack x) {
        // bool operator!=(const QDomNodeList&) const
        bool xret = ((const x_QDomNodeList*)this)->QDomNodeList::operator!=(*(const QDomNodeList*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_6(Smoke::Stack x) {
        // QDomNode item(int) const
        QDomNode xret = ((const x_QDomNodeList*)this)->QDomNodeList::item((int)x[1].s_int);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_7(Smoke::Stack x) {
        // QDomNode at(int) const
        QDomNode xret = ((const x_QDomNodeList*)this)->QDomNodeList::at((int)x[1].s_int);
        x[0].s_class = (void*)new QDomNode(xret);
    }
    void x_8(Smoke::Stack x) {
        // unsigned int length() const
        unsigned int xret = ((const x_QDomNodeList*)this)->QDomNodeList::length();
        x[0].s_uint = xret;
    }
    void x_9(Smoke::Stack x) {
        // int count() const
        int xret = ((const x_QDomNodeList*)this)->QDomNodeList::count();
        x[0].s_int = xret;
    }
    void x_10(Smoke::Stack x) {
        // int size() const
        int xret = ((const x_QDomNodeList*)this)->QDomNodeList::size();
        x[0].s_int = xret;
    }
    void x_11(Smoke::Stack x) {
        // bool isEmpty() const
        bool xret = ((const x_QDomNodeList*)this)->QDomNodeList::isEmpty();
        x[0].s_bool = xret;
    }
    ~x_QDomNodeList() { this->_binding->deleted(17, (void*)this); }
};
void xcall_QDomNodeList(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomNodeList *xself = (x_QDomNodeList*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomNodeList::x_1(args);	break;
        case 2: x_QDomNodeList::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: 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: delete (QDomNodeList*)xself;	break;
    }
}
class x_QDomNotation : public QDomNotation {
    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) {
        // QDomNotation* QDomNotation()
        x_QDomNotation* xret = new x_QDomNotation();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomNotation() : QDomNotation() {}
    static void x_2(Smoke::Stack x) {
        // QDomNotation* QDomNotation(const QDomNotation&)
        x_QDomNotation* xret = new x_QDomNotation(*(const QDomNotation*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomNotation(const QDomNotation& x1) : QDomNotation(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomNotation& operator=(const QDomNotation&)
        QDomNotation& xret = this->QDomNotation::operator=(*(const QDomNotation*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // QString publicId() const
        QString xret = ((const x_QDomNotation*)this)->QDomNotation::publicId();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_5(Smoke::Stack x) {
        // QString systemId() const
        QString xret = ((const x_QDomNotation*)this)->QDomNotation::systemId();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_6(Smoke::Stack x) {
        // QDomNode::NodeType nodeType() const
        QDomNode::NodeType xret = ((const x_QDomNotation*)this)->QDomNotation::nodeType();
        x[0].s_enum = xret;
    }
    ~x_QDomNotation() { this->_binding->deleted(19, (void*)this); }
};
void xcall_QDomNotation(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomNotation *xself = (x_QDomNotation*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomNotation::x_1(args);	break;
        case 2: x_QDomNotation::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: delete (QDomNotation*)xself;	break;
    }
}
class x_QDomProcessingInstruction : public QDomProcessingInstruction {
    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) {
        // QDomProcessingInstruction* QDomProcessingInstruction()
        x_QDomProcessingInstruction* xret = new x_QDomProcessingInstruction();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomProcessingInstruction() : QDomProcessingInstruction() {}
    static void x_2(Smoke::Stack x) {
        // QDomProcessingInstruction* QDomProcessingInstruction(const QDomProcessingInstruction&)
        x_QDomProcessingInstruction* xret = new x_QDomProcessingInstruction(*(const QDomProcessingInstruction*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomProcessingInstruction(const QDomProcessingInstruction& x1) : QDomProcessingInstruction(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomProcessingInstruction& operator=(const QDomProcessingInstruction&)
        QDomProcessingInstruction& xret = this->QDomProcessingInstruction::operator=(*(const QDomProcessingInstruction*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // QString target() const
        QString xret = ((const x_QDomProcessingInstruction*)this)->QDomProcessingInstruction::target();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_5(Smoke::Stack x) {
        // QString data() const
        QString xret = ((const x_QDomProcessingInstruction*)this)->QDomProcessingInstruction::data();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_6(Smoke::Stack x) {
        // void setData(const QString&)
        this->QDomProcessingInstruction::setData(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_7(Smoke::Stack x) {
        // QDomNode::NodeType nodeType() const
        QDomNode::NodeType xret = ((const x_QDomProcessingInstruction*)this)->QDomProcessingInstruction::nodeType();
        x[0].s_enum = xret;
    }
    ~x_QDomProcessingInstruction() { this->_binding->deleted(20, (void*)this); }
};
void xcall_QDomProcessingInstruction(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomProcessingInstruction *xself = (x_QDomProcessingInstruction*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomProcessingInstruction::x_1(args);	break;
        case 2: x_QDomProcessingInstruction::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: delete (QDomProcessingInstruction*)xself;	break;
    }
}
class x_QDomText : public QDomText {
    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) {
        // QDomText* QDomText()
        x_QDomText* xret = new x_QDomText();
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomText() : QDomText() {}
    static void x_2(Smoke::Stack x) {
        // QDomText* QDomText(const QDomText&)
        x_QDomText* xret = new x_QDomText(*(const QDomText*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QDomText(const QDomText& x1) : QDomText(x1) {}
    void x_3(Smoke::Stack x) {
        // QDomText& operator=(const QDomText&)
        QDomText& xret = this->QDomText::operator=(*(const QDomText*)x[1].s_class);
        x[0].s_class = (void*)&xret;
    }
    void x_4(Smoke::Stack x) {
        // QDomText splitText(int)
        QDomText xret = this->QDomText::splitText((int)x[1].s_int);
        x[0].s_class = (void*)new QDomText(xret);
    }
    void x_5(Smoke::Stack x) {
        // QDomNode::NodeType nodeType() const
        QDomNode::NodeType xret = ((const x_QDomText*)this)->QDomText::nodeType();
        x[0].s_enum = xret;
    }
    ~x_QDomText() { this->_binding->deleted(21, (void*)this); }
};
void xcall_QDomText(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QDomText *xself = (x_QDomText*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QDomText::x_1(args);	break;
        case 2: x_QDomText::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: delete (QDomText*)xself;	break;
    }
}
class x_QXmlAttributes : public QXmlAttributes, 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) {
        // QXmlAttributes* QXmlAttributes()
        x_QXmlAttributes* xret = new x_QXmlAttributes();
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlAttributes() : QXmlAttributes() {}
    void x_2(Smoke::Stack x) {
        // int index(const QString&) const
        int xret = ((const x_QXmlAttributes*)this)->QXmlAttributes::index(*(const QString*)x[1].s_class);
        x[0].s_int = xret;
    }
    void x_3(Smoke::Stack x) {
        // int index(const QLatin1String&) const
        int xret = ((const x_QXmlAttributes*)this)->QXmlAttributes::index(*(const QLatin1String*)x[1].s_class);
        x[0].s_int = xret;
    }
    void x_4(Smoke::Stack x) {
        // int index(const QString&, const QString&) const
        int xret = ((const x_QXmlAttributes*)this)->QXmlAttributes::index(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_int = xret;
    }
    void x_5(Smoke::Stack x) {
        // int length() const
        int xret = ((const x_QXmlAttributes*)this)->QXmlAttributes::length();
        x[0].s_int = xret;
    }
    void x_6(Smoke::Stack x) {
        // int count() const
        int xret = ((const x_QXmlAttributes*)this)->QXmlAttributes::count();
        x[0].s_int = xret;
    }
    void x_7(Smoke::Stack x) {
        // QString localName(int) const
        QString xret = ((const x_QXmlAttributes*)this)->QXmlAttributes::localName((int)x[1].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_8(Smoke::Stack x) {
        // QString qName(int) const
        QString xret = ((const x_QXmlAttributes*)this)->QXmlAttributes::qName((int)x[1].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_9(Smoke::Stack x) {
        // QString uri(int) const
        QString xret = ((const x_QXmlAttributes*)this)->QXmlAttributes::uri((int)x[1].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_10(Smoke::Stack x) {
        // QString type(int) const
        QString xret = ((const x_QXmlAttributes*)this)->QXmlAttributes::type((int)x[1].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_11(Smoke::Stack x) {
        // QString type(const QString&) const
        QString xret = ((const x_QXmlAttributes*)this)->QXmlAttributes::type(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_12(Smoke::Stack x) {
        // QString type(const QString&, const QString&) const
        QString xret = ((const x_QXmlAttributes*)this)->QXmlAttributes::type(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_13(Smoke::Stack x) {
        // QString value(int) const
        QString xret = ((const x_QXmlAttributes*)this)->QXmlAttributes::value((int)x[1].s_int);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_14(Smoke::Stack x) {
        // QString value(const QString&) const
        QString xret = ((const x_QXmlAttributes*)this)->QXmlAttributes::value(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_15(Smoke::Stack x) {
        // QString value(const QLatin1String&) const
        QString xret = ((const x_QXmlAttributes*)this)->QXmlAttributes::value(*(const QLatin1String*)x[1].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_16(Smoke::Stack x) {
        // QString value(const QString&, const QString&) const
        QString xret = ((const x_QXmlAttributes*)this)->QXmlAttributes::value(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_17(Smoke::Stack x) {
        // void clear()
        this->QXmlAttributes::clear();
        (void)x; // noop (for compiler warning)
    }
    void x_18(Smoke::Stack x) {
        // void append(const QString&, const QString&, const QString&, const QString&)
        this->QXmlAttributes::append(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class);
        (void)x; // noop (for compiler warning)
    }
    static void x_19(Smoke::Stack x) {
        // QXmlAttributes* QXmlAttributes(const QXmlAttributes&)
        x_QXmlAttributes* xret = new x_QXmlAttributes(*(const QXmlAttributes*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlAttributes(const QXmlAttributes& x1) : QXmlAttributes(x1) {}
    ~x_QXmlAttributes() { this->_binding->deleted(28, (void*)this); }
};
void xcall_QXmlAttributes(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QXmlAttributes *xself = (x_QXmlAttributes*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QXmlAttributes::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: 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: x_QXmlAttributes::x_19(args);	break;
        case 20: delete (QXmlAttributes*)xself;	break;
    }
}
class x_QXmlContentHandler : public QXmlContentHandler, 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 void setDocumentLocator(QXmlLocator*) = 0
        this->setDocumentLocator((QXmlLocator*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_2(Smoke::Stack x) {
        // virtual bool startDocument() = 0
        bool xret = this->startDocument();
        x[0].s_bool = xret;
    }
    void x_3(Smoke::Stack x) {
        // virtual bool endDocument() = 0
        bool xret = this->endDocument();
        x[0].s_bool = xret;
    }
    void x_4(Smoke::Stack x) {
        // virtual bool startPrefixMapping(const QString&, const QString&) = 0
        bool xret = this->startPrefixMapping(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_5(Smoke::Stack x) {
        // virtual bool endPrefixMapping(const QString&) = 0
        bool xret = this->endPrefixMapping(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_6(Smoke::Stack x) {
        // virtual bool startElement(const QString&, const QString&, const QString&, const QXmlAttributes&) = 0
        bool xret = this->startElement(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QXmlAttributes*)x[4].s_class);
        x[0].s_bool = xret;
    }
    void x_7(Smoke::Stack x) {
        // virtual bool endElement(const QString&, const QString&, const QString&) = 0
        bool xret = this->endElement(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
        x[0].s_bool = xret;
    }
    void x_8(Smoke::Stack x) {
        // virtual bool characters(const QString&) = 0
        bool xret = this->characters(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_9(Smoke::Stack x) {
        // virtual bool ignorableWhitespace(const QString&) = 0
        bool xret = this->ignorableWhitespace(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_10(Smoke::Stack x) {
        // virtual bool processingInstruction(const QString&, const QString&) = 0
        bool xret = this->processingInstruction(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_11(Smoke::Stack x) {
        // virtual bool skippedEntity(const QString&) = 0
        bool xret = this->skippedEntity(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_12(Smoke::Stack x) {
        // virtual QString errorString() const = 0
        QString xret = ((const x_QXmlContentHandler*)this)->errorString();
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_13(Smoke::Stack x) {
        // QXmlContentHandler* QXmlContentHandler()
        x_QXmlContentHandler* xret = new x_QXmlContentHandler();
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlContentHandler() : QXmlContentHandler() {}
    static void x_14(Smoke::Stack x) {
        // QXmlContentHandler* QXmlContentHandler(const QXmlContentHandler&)
        x_QXmlContentHandler* xret = new x_QXmlContentHandler(*(const QXmlContentHandler*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlContentHandler(const QXmlContentHandler& x1) : QXmlContentHandler(x1) {}
    virtual void setDocumentLocator(QXmlLocator* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        this->_binding->callMethod(339, (void*)this, x, true /*pure virtual*/);
    }
    virtual bool startDocument() {
        Smoke::StackItem x[1];
        this->_binding->callMethod(340, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool endDocument() {
        Smoke::StackItem x[1];
        this->_binding->callMethod(341, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool startPrefixMapping(const QString& x1, const QString& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        this->_binding->callMethod(342, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool endPrefixMapping(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(343, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool startElement(const QString& x1, const QString& x2, const QString& x3, const QXmlAttributes& x4) {
        Smoke::StackItem x[5];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        x[4].s_class = (void*)&x4;
        this->_binding->callMethod(344, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool endElement(const QString& x1, const QString& x2, const QString& x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        this->_binding->callMethod(345, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool characters(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(346, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool ignorableWhitespace(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(347, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool processingInstruction(const QString& x1, const QString& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        this->_binding->callMethod(348, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool skippedEntity(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(349, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual QString errorString() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(350, (void*)this, x, true /*pure virtual*/);
        QString* xptr = (QString*)x[0].s_class;
        QString xret(*xptr);
        delete xptr;
        return xret;
    }
    ~x_QXmlContentHandler() { this->_binding->deleted(29, (void*)this); }
};
void xcall_QXmlContentHandler(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QXmlContentHandler *xself = (x_QXmlContentHandler*)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: 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: 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: x_QXmlContentHandler::x_13(args);	break;
        case 14: x_QXmlContentHandler::x_14(args);	break;
        case 15: delete (QXmlContentHandler*)xself;	break;
    }
}
class x_QXmlDTDHandler : public QXmlDTDHandler, 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 bool notationDecl(const QString&, const QString&, const QString&) = 0
        bool xret = this->notationDecl(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
        x[0].s_bool = xret;
    }
    void x_2(Smoke::Stack x) {
        // virtual bool unparsedEntityDecl(const QString&, const QString&, const QString&, const QString&) = 0
        bool xret = this->unparsedEntityDecl(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class);
        x[0].s_bool = xret;
    }
    void x_3(Smoke::Stack x) {
        // virtual QString errorString() const = 0
        QString xret = ((const x_QXmlDTDHandler*)this)->errorString();
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_4(Smoke::Stack x) {
        // QXmlDTDHandler* QXmlDTDHandler()
        x_QXmlDTDHandler* xret = new x_QXmlDTDHandler();
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlDTDHandler() : QXmlDTDHandler() {}
    static void x_5(Smoke::Stack x) {
        // QXmlDTDHandler* QXmlDTDHandler(const QXmlDTDHandler&)
        x_QXmlDTDHandler* xret = new x_QXmlDTDHandler(*(const QXmlDTDHandler*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlDTDHandler(const QXmlDTDHandler& x1) : QXmlDTDHandler(x1) {}
    virtual bool notationDecl(const QString& x1, const QString& x2, const QString& x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        this->_binding->callMethod(354, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool unparsedEntityDecl(const QString& x1, const QString& x2, const QString& x3, const QString& x4) {
        Smoke::StackItem x[5];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        x[4].s_class = (void*)&x4;
        this->_binding->callMethod(355, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual QString errorString() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(356, (void*)this, x, true /*pure virtual*/);
        QString* xptr = (QString*)x[0].s_class;
        QString xret(*xptr);
        delete xptr;
        return xret;
    }
    ~x_QXmlDTDHandler() { this->_binding->deleted(30, (void*)this); }
};
void xcall_QXmlDTDHandler(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QXmlDTDHandler *xself = (x_QXmlDTDHandler*)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: xself->x_3(args);	break;
        case 4: x_QXmlDTDHandler::x_4(args);	break;
        case 5: x_QXmlDTDHandler::x_5(args);	break;
        case 6: delete (QXmlDTDHandler*)xself;	break;
    }
}
class x_QXmlDeclHandler : public QXmlDeclHandler, 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 bool attributeDecl(const QString&, const QString&, const QString&, const QString&, const QString&) = 0
        bool xret = this->attributeDecl(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class,*(const QString*)x[5].s_class);
        x[0].s_bool = xret;
    }
    void x_2(Smoke::Stack x) {
        // virtual bool internalEntityDecl(const QString&, const QString&) = 0
        bool xret = this->internalEntityDecl(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_3(Smoke::Stack x) {
        // virtual bool externalEntityDecl(const QString&, const QString&, const QString&) = 0
        bool xret = this->externalEntityDecl(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
        x[0].s_bool = xret;
    }
    void x_4(Smoke::Stack x) {
        // virtual QString errorString() const = 0
        QString xret = ((const x_QXmlDeclHandler*)this)->errorString();
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_5(Smoke::Stack x) {
        // QXmlDeclHandler* QXmlDeclHandler()
        x_QXmlDeclHandler* xret = new x_QXmlDeclHandler();
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlDeclHandler() : QXmlDeclHandler() {}
    static void x_6(Smoke::Stack x) {
        // QXmlDeclHandler* QXmlDeclHandler(const QXmlDeclHandler&)
        x_QXmlDeclHandler* xret = new x_QXmlDeclHandler(*(const QXmlDeclHandler*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlDeclHandler(const QXmlDeclHandler& x1) : QXmlDeclHandler(x1) {}
    virtual bool attributeDecl(const QString& x1, const QString& x2, const QString& x3, const QString& x4, const QString& x5) {
        Smoke::StackItem x[6];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        x[4].s_class = (void*)&x4;
        x[5].s_class = (void*)&x5;
        this->_binding->callMethod(360, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool internalEntityDecl(const QString& x1, const QString& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        this->_binding->callMethod(361, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool externalEntityDecl(const QString& x1, const QString& x2, const QString& x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        this->_binding->callMethod(362, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual QString errorString() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(363, (void*)this, x, true /*pure virtual*/);
        QString* xptr = (QString*)x[0].s_class;
        QString xret(*xptr);
        delete xptr;
        return xret;
    }
    ~x_QXmlDeclHandler() { this->_binding->deleted(31, (void*)this); }
};
void xcall_QXmlDeclHandler(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QXmlDeclHandler *xself = (x_QXmlDeclHandler*)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: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: x_QXmlDeclHandler::x_5(args);	break;
        case 6: x_QXmlDeclHandler::x_6(args);	break;
        case 7: delete (QXmlDeclHandler*)xself;	break;
    }
}
class x_QXmlDefaultHandler : public QXmlDefaultHandler, 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) {
        // QXmlDefaultHandler* QXmlDefaultHandler()
        x_QXmlDefaultHandler* xret = new x_QXmlDefaultHandler();
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlDefaultHandler() : QXmlDefaultHandler() {}
    void x_2(Smoke::Stack x) {
        // void setDocumentLocator(QXmlLocator*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            this->QXmlDefaultHandler::setDocumentLocator((QXmlLocator*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setDocumentLocator((QXmlLocator*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_3(Smoke::Stack x) {
        // bool startDocument()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::startDocument();
            x[0].s_bool = xret;
        } else {
            bool xret = this->startDocument();
            x[0].s_bool = xret;
        }
    }
    void x_4(Smoke::Stack x) {
        // bool endDocument()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::endDocument();
            x[0].s_bool = xret;
        } else {
            bool xret = this->endDocument();
            x[0].s_bool = xret;
        }
    }
    void x_5(Smoke::Stack x) {
        // bool startPrefixMapping(const QString&, const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::startPrefixMapping(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->startPrefixMapping(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_6(Smoke::Stack x) {
        // bool endPrefixMapping(const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::endPrefixMapping(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->endPrefixMapping(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_7(Smoke::Stack x) {
        // bool startElement(const QString&, const QString&, const QString&, const QXmlAttributes&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::startElement(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QXmlAttributes*)x[4].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->startElement(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QXmlAttributes*)x[4].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_8(Smoke::Stack x) {
        // bool endElement(const QString&, const QString&, const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::endElement(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->endElement(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_9(Smoke::Stack x) {
        // bool characters(const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::characters(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->characters(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_10(Smoke::Stack x) {
        // bool ignorableWhitespace(const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::ignorableWhitespace(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->ignorableWhitespace(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_11(Smoke::Stack x) {
        // bool processingInstruction(const QString&, const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::processingInstruction(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->processingInstruction(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_12(Smoke::Stack x) {
        // bool skippedEntity(const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::skippedEntity(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->skippedEntity(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_13(Smoke::Stack x) {
        // bool warning(const QXmlParseException&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::warning(*(const QXmlParseException*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->warning(*(const QXmlParseException*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_14(Smoke::Stack x) {
        // bool error(const QXmlParseException&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::error(*(const QXmlParseException*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->error(*(const QXmlParseException*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_15(Smoke::Stack x) {
        // bool fatalError(const QXmlParseException&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::fatalError(*(const QXmlParseException*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->fatalError(*(const QXmlParseException*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_16(Smoke::Stack x) {
        // bool notationDecl(const QString&, const QString&, const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::notationDecl(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->notationDecl(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_17(Smoke::Stack x) {
        // bool unparsedEntityDecl(const QString&, const QString&, const QString&, const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::unparsedEntityDecl(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->unparsedEntityDecl(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_18(Smoke::Stack x) {
        // bool resolveEntity(const QString&, const QString&, QXmlInputSource*&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::resolveEntity(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(QXmlInputSource**)x[3].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->resolveEntity(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(QXmlInputSource**)x[3].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_19(Smoke::Stack x) {
        // bool startDTD(const QString&, const QString&, const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::startDTD(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->startDTD(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_20(Smoke::Stack x) {
        // bool endDTD()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::endDTD();
            x[0].s_bool = xret;
        } else {
            bool xret = this->endDTD();
            x[0].s_bool = xret;
        }
    }
    void x_21(Smoke::Stack x) {
        // bool startEntity(const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::startEntity(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->startEntity(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_22(Smoke::Stack x) {
        // bool endEntity(const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::endEntity(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->endEntity(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_23(Smoke::Stack x) {
        // bool startCDATA()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::startCDATA();
            x[0].s_bool = xret;
        } else {
            bool xret = this->startCDATA();
            x[0].s_bool = xret;
        }
    }
    void x_24(Smoke::Stack x) {
        // bool endCDATA()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::endCDATA();
            x[0].s_bool = xret;
        } else {
            bool xret = this->endCDATA();
            x[0].s_bool = xret;
        }
    }
    void x_25(Smoke::Stack x) {
        // bool comment(const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::comment(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->comment(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_26(Smoke::Stack x) {
        // bool attributeDecl(const QString&, const QString&, const QString&, const QString&, const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::attributeDecl(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class,*(const QString*)x[5].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->attributeDecl(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class,*(const QString*)x[4].s_class,*(const QString*)x[5].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_27(Smoke::Stack x) {
        // bool internalEntityDecl(const QString&, const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::internalEntityDecl(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->internalEntityDecl(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_28(Smoke::Stack x) {
        // bool externalEntityDecl(const QString&, const QString&, const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            bool xret = this->QXmlDefaultHandler::externalEntityDecl(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->externalEntityDecl(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_29(Smoke::Stack x) {
        // QString errorString() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlDefaultHandler*>(this))) {
            QString xret = ((const x_QXmlDefaultHandler*)this)->QXmlDefaultHandler::errorString();
            x[0].s_class = (void*)new QString(xret);
        } else {
            QString xret = ((const x_QXmlDefaultHandler*)this)->errorString();
            x[0].s_class = (void*)new QString(xret);
        }
    }
    virtual void setDocumentLocator(QXmlLocator* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(368, (void*)this, x)) return;
        this->QXmlDefaultHandler::setDocumentLocator(x1);
    }
    virtual bool startDocument() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(369, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::startDocument();
    }
    virtual bool endDocument() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(370, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::endDocument();
    }
    virtual bool startPrefixMapping(const QString& x1, const QString& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(371, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::startPrefixMapping(x1, x2);
    }
    virtual bool endPrefixMapping(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(372, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::endPrefixMapping(x1);
    }
    virtual bool startElement(const QString& x1, const QString& x2, const QString& x3, const QXmlAttributes& x4) {
        Smoke::StackItem x[5];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        x[4].s_class = (void*)&x4;
        if (this->_binding->callMethod(373, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::startElement(x1, x2, x3, x4);
    }
    virtual bool endElement(const QString& x1, const QString& x2, const QString& x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        if (this->_binding->callMethod(374, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::endElement(x1, x2, x3);
    }
    virtual bool characters(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(375, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::characters(x1);
    }
    virtual bool ignorableWhitespace(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(376, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::ignorableWhitespace(x1);
    }
    virtual bool processingInstruction(const QString& x1, const QString& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(377, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::processingInstruction(x1, x2);
    }
    virtual bool skippedEntity(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(378, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::skippedEntity(x1);
    }
    virtual QString errorString() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(395, (void*)this, x)) {
            QString* xptr = (QString*)x[0].s_class;
            QString xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QXmlDefaultHandler::errorString();
    }
    virtual bool warning(const QXmlParseException& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(379, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::warning(x1);
    }
    virtual bool error(const QXmlParseException& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(380, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::error(x1);
    }
    virtual bool fatalError(const QXmlParseException& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(381, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::fatalError(x1);
    }
    virtual bool notationDecl(const QString& x1, const QString& x2, const QString& x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        if (this->_binding->callMethod(382, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::notationDecl(x1, x2, x3);
    }
    virtual bool unparsedEntityDecl(const QString& x1, const QString& x2, const QString& x3, const QString& x4) {
        Smoke::StackItem x[5];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        x[4].s_class = (void*)&x4;
        if (this->_binding->callMethod(383, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::unparsedEntityDecl(x1, x2, x3, x4);
    }
    virtual bool resolveEntity(const QString& x1, const QString& x2, QXmlInputSource*& x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)x3;
        if (this->_binding->callMethod(384, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::resolveEntity(x1, x2, x3);
    }
    virtual bool startDTD(const QString& x1, const QString& x2, const QString& x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        if (this->_binding->callMethod(385, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::startDTD(x1, x2, x3);
    }
    virtual bool endDTD() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(386, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::endDTD();
    }
    virtual bool startEntity(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(387, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::startEntity(x1);
    }
    virtual bool endEntity(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(388, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::endEntity(x1);
    }
    virtual bool startCDATA() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(389, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::startCDATA();
    }
    virtual bool endCDATA() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(390, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::endCDATA();
    }
    virtual bool comment(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(391, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::comment(x1);
    }
    virtual bool attributeDecl(const QString& x1, const QString& x2, const QString& x3, const QString& x4, const QString& x5) {
        Smoke::StackItem x[6];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        x[4].s_class = (void*)&x4;
        x[5].s_class = (void*)&x5;
        if (this->_binding->callMethod(392, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::attributeDecl(x1, x2, x3, x4, x5);
    }
    virtual bool internalEntityDecl(const QString& x1, const QString& x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        if (this->_binding->callMethod(393, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::internalEntityDecl(x1, x2);
    }
    virtual bool externalEntityDecl(const QString& x1, const QString& x2, const QString& x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        if (this->_binding->callMethod(394, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlDefaultHandler::externalEntityDecl(x1, x2, x3);
    }
    ~x_QXmlDefaultHandler() { this->_binding->deleted(32, (void*)this); }
};
void xcall_QXmlDefaultHandler(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QXmlDefaultHandler *xself = (x_QXmlDefaultHandler*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QXmlDefaultHandler::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: 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: delete (QXmlDefaultHandler*)xself;	break;
    }
}
class x_QXmlEntityResolver : public QXmlEntityResolver, 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 bool resolveEntity(const QString&, const QString&, QXmlInputSource*&) = 0
        bool xret = this->resolveEntity(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(QXmlInputSource**)x[3].s_class);
        x[0].s_bool = xret;
    }
    void x_2(Smoke::Stack x) {
        // virtual QString errorString() const = 0
        QString xret = ((const x_QXmlEntityResolver*)this)->errorString();
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_3(Smoke::Stack x) {
        // QXmlEntityResolver* QXmlEntityResolver()
        x_QXmlEntityResolver* xret = new x_QXmlEntityResolver();
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlEntityResolver() : QXmlEntityResolver() {}
    static void x_4(Smoke::Stack x) {
        // QXmlEntityResolver* QXmlEntityResolver(const QXmlEntityResolver&)
        x_QXmlEntityResolver* xret = new x_QXmlEntityResolver(*(const QXmlEntityResolver*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlEntityResolver(const QXmlEntityResolver& x1) : QXmlEntityResolver(x1) {}
    virtual bool resolveEntity(const QString& x1, const QString& x2, QXmlInputSource*& x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)x3;
        this->_binding->callMethod(397, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual QString errorString() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(398, (void*)this, x, true /*pure virtual*/);
        QString* xptr = (QString*)x[0].s_class;
        QString xret(*xptr);
        delete xptr;
        return xret;
    }
    ~x_QXmlEntityResolver() { this->_binding->deleted(33, (void*)this); }
};
void xcall_QXmlEntityResolver(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QXmlEntityResolver *xself = (x_QXmlEntityResolver*)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_QXmlEntityResolver::x_3(args);	break;
        case 4: x_QXmlEntityResolver::x_4(args);	break;
        case 5: delete (QXmlEntityResolver*)xself;	break;
    }
}
class x_QXmlErrorHandler : public QXmlErrorHandler, 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 bool warning(const QXmlParseException&) = 0
        bool xret = this->warning(*(const QXmlParseException*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_2(Smoke::Stack x) {
        // virtual bool error(const QXmlParseException&) = 0
        bool xret = this->error(*(const QXmlParseException*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_3(Smoke::Stack x) {
        // virtual bool fatalError(const QXmlParseException&) = 0
        bool xret = this->fatalError(*(const QXmlParseException*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_4(Smoke::Stack x) {
        // virtual QString errorString() const = 0
        QString xret = ((const x_QXmlErrorHandler*)this)->errorString();
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_5(Smoke::Stack x) {
        // QXmlErrorHandler* QXmlErrorHandler()
        x_QXmlErrorHandler* xret = new x_QXmlErrorHandler();
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlErrorHandler() : QXmlErrorHandler() {}
    static void x_6(Smoke::Stack x) {
        // QXmlErrorHandler* QXmlErrorHandler(const QXmlErrorHandler&)
        x_QXmlErrorHandler* xret = new x_QXmlErrorHandler(*(const QXmlErrorHandler*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlErrorHandler(const QXmlErrorHandler& x1) : QXmlErrorHandler(x1) {}
    virtual bool warning(const QXmlParseException& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(402, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool error(const QXmlParseException& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(403, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool fatalError(const QXmlParseException& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(404, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual QString errorString() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(405, (void*)this, x, true /*pure virtual*/);
        QString* xptr = (QString*)x[0].s_class;
        QString xret(*xptr);
        delete xptr;
        return xret;
    }
    ~x_QXmlErrorHandler() { this->_binding->deleted(34, (void*)this); }
};
void xcall_QXmlErrorHandler(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QXmlErrorHandler *xself = (x_QXmlErrorHandler*)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: xself->x_3(args);	break;
        case 4: xself->x_4(args);	break;
        case 5: x_QXmlErrorHandler::x_5(args);	break;
        case 6: x_QXmlErrorHandler::x_6(args);	break;
        case 7: delete (QXmlErrorHandler*)xself;	break;
    }
}
class x_QXmlInputSource : public QXmlInputSource, 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) {
        // QXmlInputSource* QXmlInputSource()
        x_QXmlInputSource* xret = new x_QXmlInputSource();
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlInputSource() : QXmlInputSource() {}
    static void x_2(Smoke::Stack x) {
        // QXmlInputSource* QXmlInputSource(QIODevice*)
        x_QXmlInputSource* xret = new x_QXmlInputSource((QIODevice*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlInputSource(QIODevice* x1) : QXmlInputSource(x1) {}
    void x_3(Smoke::Stack x) {
        // virtual void setData(const QString&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlInputSource*>(this))) {
            this->QXmlInputSource::setData(*(const QString*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setData(*(const QString*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_4(Smoke::Stack x) {
        // virtual void setData(const QByteArray&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlInputSource*>(this))) {
            this->QXmlInputSource::setData(*(const QByteArray*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setData(*(const QByteArray*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_5(Smoke::Stack x) {
        // virtual void fetchData()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlInputSource*>(this))) {
            this->QXmlInputSource::fetchData();
            (void)x; // noop (for compiler warning)
        } else {
            this->fetchData();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_6(Smoke::Stack x) {
        // virtual QString data() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlInputSource*>(this))) {
            QString xret = ((const x_QXmlInputSource*)this)->QXmlInputSource::data();
            x[0].s_class = (void*)new QString(xret);
        } else {
            QString xret = ((const x_QXmlInputSource*)this)->data();
            x[0].s_class = (void*)new QString(xret);
        }
    }
    void x_7(Smoke::Stack x) {
        // virtual QChar next()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlInputSource*>(this))) {
            QChar xret = this->QXmlInputSource::next();
            x[0].s_class = (void*)new QChar(xret);
        } else {
            QChar xret = this->next();
            x[0].s_class = (void*)new QChar(xret);
        }
    }
    void x_8(Smoke::Stack x) {
        // virtual void reset()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlInputSource*>(this))) {
            this->QXmlInputSource::reset();
            (void)x; // noop (for compiler warning)
        } else {
            this->reset();
            (void)x; // noop (for compiler warning)
        }
    }
    void x_9(Smoke::Stack x) {
        // virtual QString fromRawData(const QByteArray&, bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlInputSource*>(this))) {
            QString xret = this->QXmlInputSource::fromRawData(*(const QByteArray*)x[1].s_class,(bool)x[2].s_bool);
            x[0].s_class = (void*)new QString(xret);
        } else {
            QString xret = this->fromRawData(*(const QByteArray*)x[1].s_class,(bool)x[2].s_bool);
            x[0].s_class = (void*)new QString(xret);
        }
    }
    static void x_10(Smoke::Stack x) {
        // QXmlInputSource* QXmlInputSource(const QXmlInputSource&)
        x_QXmlInputSource* xret = new x_QXmlInputSource(*(const QXmlInputSource*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlInputSource(const QXmlInputSource& x1) : QXmlInputSource(x1) {}
    void x_11(Smoke::Stack x) {
        // QString fromRawData(const QByteArray&)
        QString xret = this->QXmlInputSource::fromRawData(*(const QByteArray*)x[1].s_class,(bool)false);
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_12(Smoke::Stack x) {
        // static const unsigned short EndOfData
        x[0].s_ushort = QXmlInputSource::EndOfData;
    }
    static void x_13(Smoke::Stack x) {
        // static const unsigned short EndOfDocument
        x[0].s_ushort = QXmlInputSource::EndOfDocument;
    }
    virtual void setData(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(411, (void*)this, x)) return;
        this->QXmlInputSource::setData(x1);
    }
    virtual void setData(const QByteArray& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(412, (void*)this, x)) return;
        this->QXmlInputSource::setData(x1);
    }
    virtual void fetchData() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(413, (void*)this, x)) return;
        this->QXmlInputSource::fetchData();
    }
    virtual QString data() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(414, (void*)this, x)) {
            QString* xptr = (QString*)x[0].s_class;
            QString xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QXmlInputSource::data();
    }
    virtual QChar next() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(415, (void*)this, x)) {
            QChar* xptr = (QChar*)x[0].s_class;
            QChar xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QXmlInputSource::next();
    }
    virtual void reset() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(416, (void*)this, x)) return;
        this->QXmlInputSource::reset();
    }
    virtual QString fromRawData(const QByteArray& x1, bool x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_bool = x2;
        if (this->_binding->callMethod(417, (void*)this, x)) {
            QString* xptr = (QString*)x[0].s_class;
            QString xret(*xptr);
            delete xptr;
            return xret;
        }
        return this->QXmlInputSource::fromRawData(x1, x2);
    }
    ~x_QXmlInputSource() { this->_binding->deleted(35, (void*)this); }
};
void xcall_QXmlInputSource(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QXmlInputSource *xself = (x_QXmlInputSource*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QXmlInputSource::x_1(args);	break;
        case 2: x_QXmlInputSource::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: xself->x_8(args);	break;
        case 9: xself->x_9(args);	break;
        case 10: x_QXmlInputSource::x_10(args);	break;
        case 11: xself->x_11(args);	break;
        case 12: x_QXmlInputSource::x_12(args);	break;
        case 13: x_QXmlInputSource::x_13(args);	break;
        case 14: delete (QXmlInputSource*)xself;	break;
    }
}
class x_QXmlLexicalHandler : public QXmlLexicalHandler, 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 bool startDTD(const QString&, const QString&, const QString&) = 0
        bool xret = this->startDTD(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
        x[0].s_bool = xret;
    }
    void x_2(Smoke::Stack x) {
        // virtual bool endDTD() = 0
        bool xret = this->endDTD();
        x[0].s_bool = xret;
    }
    void x_3(Smoke::Stack x) {
        // virtual bool startEntity(const QString&) = 0
        bool xret = this->startEntity(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_4(Smoke::Stack x) {
        // virtual bool endEntity(const QString&) = 0
        bool xret = this->endEntity(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_5(Smoke::Stack x) {
        // virtual bool startCDATA() = 0
        bool xret = this->startCDATA();
        x[0].s_bool = xret;
    }
    void x_6(Smoke::Stack x) {
        // virtual bool endCDATA() = 0
        bool xret = this->endCDATA();
        x[0].s_bool = xret;
    }
    void x_7(Smoke::Stack x) {
        // virtual bool comment(const QString&) = 0
        bool xret = this->comment(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_8(Smoke::Stack x) {
        // virtual QString errorString() const = 0
        QString xret = ((const x_QXmlLexicalHandler*)this)->errorString();
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_9(Smoke::Stack x) {
        // QXmlLexicalHandler* QXmlLexicalHandler()
        x_QXmlLexicalHandler* xret = new x_QXmlLexicalHandler();
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlLexicalHandler() : QXmlLexicalHandler() {}
    static void x_10(Smoke::Stack x) {
        // QXmlLexicalHandler* QXmlLexicalHandler(const QXmlLexicalHandler&)
        x_QXmlLexicalHandler* xret = new x_QXmlLexicalHandler(*(const QXmlLexicalHandler*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlLexicalHandler(const QXmlLexicalHandler& x1) : QXmlLexicalHandler(x1) {}
    virtual bool startDTD(const QString& x1, const QString& x2, const QString& x3) {
        Smoke::StackItem x[4];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)&x2;
        x[3].s_class = (void*)&x3;
        this->_binding->callMethod(423, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool endDTD() {
        Smoke::StackItem x[1];
        this->_binding->callMethod(424, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool startEntity(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(425, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool endEntity(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(426, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool startCDATA() {
        Smoke::StackItem x[1];
        this->_binding->callMethod(427, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool endCDATA() {
        Smoke::StackItem x[1];
        this->_binding->callMethod(428, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool comment(const QString& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(429, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual QString errorString() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(430, (void*)this, x, true /*pure virtual*/);
        QString* xptr = (QString*)x[0].s_class;
        QString xret(*xptr);
        delete xptr;
        return xret;
    }
    ~x_QXmlLexicalHandler() { this->_binding->deleted(36, (void*)this); }
};
void xcall_QXmlLexicalHandler(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QXmlLexicalHandler *xself = (x_QXmlLexicalHandler*)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: 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: xself->x_8(args);	break;
        case 9: x_QXmlLexicalHandler::x_9(args);	break;
        case 10: x_QXmlLexicalHandler::x_10(args);	break;
        case 11: delete (QXmlLexicalHandler*)xself;	break;
    }
}
class x_QXmlLocator : public QXmlLocator, 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) {
        // QXmlLocator* QXmlLocator()
        x_QXmlLocator* xret = new x_QXmlLocator();
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlLocator() : QXmlLocator() {}
    void x_2(Smoke::Stack x) {
        // virtual int columnNumber() const = 0
        int xret = ((const x_QXmlLocator*)this)->columnNumber();
        x[0].s_int = xret;
    }
    void x_3(Smoke::Stack x) {
        // virtual int lineNumber() const = 0
        int xret = ((const x_QXmlLocator*)this)->lineNumber();
        x[0].s_int = xret;
    }
    static void x_4(Smoke::Stack x) {
        // QXmlLocator* QXmlLocator(const QXmlLocator&)
        x_QXmlLocator* xret = new x_QXmlLocator(*(const QXmlLocator*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlLocator(const QXmlLocator& x1) : QXmlLocator(x1) {}
    virtual int columnNumber() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(435, (void*)this, x, true /*pure virtual*/);
        return (int)x[0].s_int;
    }
    virtual int lineNumber() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(436, (void*)this, x, true /*pure virtual*/);
        return (int)x[0].s_int;
    }
    ~x_QXmlLocator() { this->_binding->deleted(37, (void*)this); }
};
void xcall_QXmlLocator(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QXmlLocator *xself = (x_QXmlLocator*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QXmlLocator::x_1(args);	break;
        case 2: xself->x_2(args);	break;
        case 3: xself->x_3(args);	break;
        case 4: x_QXmlLocator::x_4(args);	break;
        case 5: delete (QXmlLocator*)xself;	break;
    }
}
class x_QXmlNamespaceSupport : public QXmlNamespaceSupport {
    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) {
        // QXmlNamespaceSupport* QXmlNamespaceSupport()
        x_QXmlNamespaceSupport* xret = new x_QXmlNamespaceSupport();
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlNamespaceSupport() : QXmlNamespaceSupport() {}
    void x_2(Smoke::Stack x) {
        // void setPrefix(const QString&, const QString&)
        this->QXmlNamespaceSupport::setPrefix(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_3(Smoke::Stack x) {
        // QString prefix(const QString&) const
        QString xret = ((const x_QXmlNamespaceSupport*)this)->QXmlNamespaceSupport::prefix(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_4(Smoke::Stack x) {
        // QString uri(const QString&) const
        QString xret = ((const x_QXmlNamespaceSupport*)this)->QXmlNamespaceSupport::uri(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QString(xret);
    }
    void x_5(Smoke::Stack x) {
        // void splitName(const QString&, QString&, QString&) const
        ((const x_QXmlNamespaceSupport*)this)->QXmlNamespaceSupport::splitName(*(const QString*)x[1].s_class,*(QString*)x[2].s_class,*(QString*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_6(Smoke::Stack x) {
        // void processName(const QString&, bool, QString&, QString&) const
        ((const x_QXmlNamespaceSupport*)this)->QXmlNamespaceSupport::processName(*(const QString*)x[1].s_class,(bool)x[2].s_bool,*(QString*)x[3].s_class,*(QString*)x[4].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_7(Smoke::Stack x) {
        // QStringList prefixes() const
        QStringList xret = ((const x_QXmlNamespaceSupport*)this)->QXmlNamespaceSupport::prefixes();
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_8(Smoke::Stack x) {
        // QStringList prefixes(const QString&) const
        QStringList xret = ((const x_QXmlNamespaceSupport*)this)->QXmlNamespaceSupport::prefixes(*(const QString*)x[1].s_class);
        x[0].s_class = (void*)new QStringList(xret);
    }
    void x_9(Smoke::Stack x) {
        // void pushContext()
        this->QXmlNamespaceSupport::pushContext();
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // void popContext()
        this->QXmlNamespaceSupport::popContext();
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // void reset()
        this->QXmlNamespaceSupport::reset();
        (void)x; // noop (for compiler warning)
    }
    ~x_QXmlNamespaceSupport() { this->_binding->deleted(38, (void*)this); }
};
void xcall_QXmlNamespaceSupport(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QXmlNamespaceSupport *xself = (x_QXmlNamespaceSupport*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QXmlNamespaceSupport::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: 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: delete (QXmlNamespaceSupport*)xself;	break;
    }
}
class x_QXmlParseException : public QXmlParseException {
    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) {
        // QXmlParseException* QXmlParseException(const QString&, int, int, const QString&, const QString&)
        x_QXmlParseException* xret = new x_QXmlParseException(*(const QString*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,*(const QString*)x[4].s_class,*(const QString*)x[5].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlParseException(const QString& x1, int x2, int x3, const QString& x4, const QString& x5) : QXmlParseException(x1, x2, x3, x4, x5) {}
    static void x_2(Smoke::Stack x) {
        // QXmlParseException* QXmlParseException(const QXmlParseException&)
        x_QXmlParseException* xret = new x_QXmlParseException(*(const QXmlParseException*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlParseException(const QXmlParseException& x1) : QXmlParseException(x1) {}
    void x_3(Smoke::Stack x) {
        // int columnNumber() const
        int xret = ((const x_QXmlParseException*)this)->QXmlParseException::columnNumber();
        x[0].s_int = xret;
    }
    void x_4(Smoke::Stack x) {
        // int lineNumber() const
        int xret = ((const x_QXmlParseException*)this)->QXmlParseException::lineNumber();
        x[0].s_int = xret;
    }
    void x_5(Smoke::Stack x) {
        // QString publicId() const
        QString xret = ((const x_QXmlParseException*)this)->QXmlParseException::publicId();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_6(Smoke::Stack x) {
        // QString systemId() const
        QString xret = ((const x_QXmlParseException*)this)->QXmlParseException::systemId();
        x[0].s_class = (void*)new QString(xret);
    }
    void x_7(Smoke::Stack x) {
        // QString message() const
        QString xret = ((const x_QXmlParseException*)this)->QXmlParseException::message();
        x[0].s_class = (void*)new QString(xret);
    }
    static void x_8(Smoke::Stack x) {
        // QXmlParseException* QXmlParseException()
        x_QXmlParseException* xret = new x_QXmlParseException((const QString&)QString(),(int)-1,(int)-1,(const QString&)QString(),(const QString&)QString());
        x[0].s_class = (void*)xret;
    }
    static void x_9(Smoke::Stack x) {
        // QXmlParseException* QXmlParseException(const QString&)
        x_QXmlParseException* xret = new x_QXmlParseException(*(const QString*)x[1].s_class,(int)-1,(int)-1,(const QString&)QString(),(const QString&)QString());
        x[0].s_class = (void*)xret;
    }
    static void x_10(Smoke::Stack x) {
        // QXmlParseException* QXmlParseException(const QString&, int)
        x_QXmlParseException* xret = new x_QXmlParseException(*(const QString*)x[1].s_class,(int)x[2].s_int,(int)-1,(const QString&)QString(),(const QString&)QString());
        x[0].s_class = (void*)xret;
    }
    static void x_11(Smoke::Stack x) {
        // QXmlParseException* QXmlParseException(const QString&, int, int)
        x_QXmlParseException* xret = new x_QXmlParseException(*(const QString*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,(const QString&)QString(),(const QString&)QString());
        x[0].s_class = (void*)xret;
    }
    static void x_12(Smoke::Stack x) {
        // QXmlParseException* QXmlParseException(const QString&, int, int, const QString&)
        x_QXmlParseException* xret = new x_QXmlParseException(*(const QString*)x[1].s_class,(int)x[2].s_int,(int)x[3].s_int,*(const QString*)x[4].s_class,(const QString&)QString());
        x[0].s_class = (void*)xret;
    }
    ~x_QXmlParseException() { this->_binding->deleted(39, (void*)this); }
};
void xcall_QXmlParseException(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QXmlParseException *xself = (x_QXmlParseException*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QXmlParseException::x_1(args);	break;
        case 2: x_QXmlParseException::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_QXmlParseException::x_8(args);	break;
        case 9: x_QXmlParseException::x_9(args);	break;
        case 10: x_QXmlParseException::x_10(args);	break;
        case 11: x_QXmlParseException::x_11(args);	break;
        case 12: x_QXmlParseException::x_12(args);	break;
        case 13: delete (QXmlParseException*)xself;	break;
    }
}
class x_QXmlReader : public QXmlReader, 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 bool feature(const QString&, bool*) const = 0
        bool xret = ((const x_QXmlReader*)this)->feature(*(const QString*)x[1].s_class,(bool*)x[2].s_class);
        x[0].s_bool = xret;
    }
    void x_2(Smoke::Stack x) {
        // virtual void setFeature(const QString&, bool) = 0
        this->setFeature(*(const QString*)x[1].s_class,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_3(Smoke::Stack x) {
        // virtual bool hasFeature(const QString&) const = 0
        bool xret = ((const x_QXmlReader*)this)->hasFeature(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_4(Smoke::Stack x) {
        // virtual void* property(const QString&, bool*) const = 0
        void* xret = ((const x_QXmlReader*)this)->property(*(const QString*)x[1].s_class,(bool*)x[2].s_class);
        x[0].s_class = (void*)xret;
    }
    void x_5(Smoke::Stack x) {
        // virtual void setProperty(const QString&, void*) = 0
        this->setProperty(*(const QString*)x[1].s_class,(void*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_6(Smoke::Stack x) {
        // virtual bool hasProperty(const QString&) const = 0
        bool xret = ((const x_QXmlReader*)this)->hasProperty(*(const QString*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_7(Smoke::Stack x) {
        // virtual void setEntityResolver(QXmlEntityResolver*) = 0
        this->setEntityResolver((QXmlEntityResolver*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_8(Smoke::Stack x) {
        // virtual QXmlEntityResolver* entityResolver() const = 0
        QXmlEntityResolver* xret = ((const x_QXmlReader*)this)->entityResolver();
        x[0].s_class = (void*)xret;
    }
    void x_9(Smoke::Stack x) {
        // virtual void setDTDHandler(QXmlDTDHandler*) = 0
        this->setDTDHandler((QXmlDTDHandler*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_10(Smoke::Stack x) {
        // virtual QXmlDTDHandler* DTDHandler() const = 0
        QXmlDTDHandler* xret = ((const x_QXmlReader*)this)->DTDHandler();
        x[0].s_class = (void*)xret;
    }
    void x_11(Smoke::Stack x) {
        // virtual void setContentHandler(QXmlContentHandler*) = 0
        this->setContentHandler((QXmlContentHandler*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_12(Smoke::Stack x) {
        // virtual QXmlContentHandler* contentHandler() const = 0
        QXmlContentHandler* xret = ((const x_QXmlReader*)this)->contentHandler();
        x[0].s_class = (void*)xret;
    }
    void x_13(Smoke::Stack x) {
        // virtual void setErrorHandler(QXmlErrorHandler*) = 0
        this->setErrorHandler((QXmlErrorHandler*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_14(Smoke::Stack x) {
        // virtual QXmlErrorHandler* errorHandler() const = 0
        QXmlErrorHandler* xret = ((const x_QXmlReader*)this)->errorHandler();
        x[0].s_class = (void*)xret;
    }
    void x_15(Smoke::Stack x) {
        // virtual void setLexicalHandler(QXmlLexicalHandler*) = 0
        this->setLexicalHandler((QXmlLexicalHandler*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // virtual QXmlLexicalHandler* lexicalHandler() const = 0
        QXmlLexicalHandler* xret = ((const x_QXmlReader*)this)->lexicalHandler();
        x[0].s_class = (void*)xret;
    }
    void x_17(Smoke::Stack x) {
        // virtual void setDeclHandler(QXmlDeclHandler*) = 0
        this->setDeclHandler((QXmlDeclHandler*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_18(Smoke::Stack x) {
        // virtual QXmlDeclHandler* declHandler() const = 0
        QXmlDeclHandler* xret = ((const x_QXmlReader*)this)->declHandler();
        x[0].s_class = (void*)xret;
    }
    void x_19(Smoke::Stack x) {
        // virtual bool parse(const QXmlInputSource&) = 0
        bool xret = this->parse(*(const QXmlInputSource*)x[1].s_class);
        x[0].s_bool = xret;
    }
    void x_20(Smoke::Stack x) {
        // virtual bool parse(const QXmlInputSource*) = 0
        bool xret = this->parse((const QXmlInputSource*)x[1].s_class);
        x[0].s_bool = xret;
    }
    static void x_21(Smoke::Stack x) {
        // QXmlReader* QXmlReader()
        x_QXmlReader* xret = new x_QXmlReader();
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlReader() : QXmlReader() {}
    static void x_22(Smoke::Stack x) {
        // QXmlReader* QXmlReader(const QXmlReader&)
        x_QXmlReader* xret = new x_QXmlReader(*(const QXmlReader*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlReader(const QXmlReader& x1) : QXmlReader(x1) {}
    void x_23(Smoke::Stack x) {
        // bool feature(const QString&) const
        bool xret = ((const x_QXmlReader*)this)->feature(*(const QString*)x[1].s_class,(bool*)0);
        x[0].s_bool = xret;
    }
    void x_24(Smoke::Stack x) {
        // void* property(const QString&) const
        void* xret = ((const x_QXmlReader*)this)->property(*(const QString*)x[1].s_class,(bool*)0);
        x[0].s_class = (void*)xret;
    }
    virtual bool feature(const QString& x1, bool* x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)x2;
        this->_binding->callMethod(464, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual void setFeature(const QString& x1, bool x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_bool = x2;
        this->_binding->callMethod(465, (void*)this, x, true /*pure virtual*/);
    }
    virtual bool hasFeature(const QString& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(466, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual void* property(const QString& x1, bool* x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)x2;
        this->_binding->callMethod(467, (void*)this, x, true /*pure virtual*/);
        return (void*)x[0].s_class;
    }
    virtual void setProperty(const QString& x1, void* x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)x2;
        this->_binding->callMethod(468, (void*)this, x, true /*pure virtual*/);
    }
    virtual bool hasProperty(const QString& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(469, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual void setEntityResolver(QXmlEntityResolver* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        this->_binding->callMethod(470, (void*)this, x, true /*pure virtual*/);
    }
    virtual QXmlEntityResolver* entityResolver() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(471, (void*)this, x, true /*pure virtual*/);
        return (QXmlEntityResolver*)x[0].s_class;
    }
    virtual void setDTDHandler(QXmlDTDHandler* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        this->_binding->callMethod(472, (void*)this, x, true /*pure virtual*/);
    }
    virtual QXmlDTDHandler* DTDHandler() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(473, (void*)this, x, true /*pure virtual*/);
        return (QXmlDTDHandler*)x[0].s_class;
    }
    virtual void setContentHandler(QXmlContentHandler* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        this->_binding->callMethod(474, (void*)this, x, true /*pure virtual*/);
    }
    virtual QXmlContentHandler* contentHandler() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(475, (void*)this, x, true /*pure virtual*/);
        return (QXmlContentHandler*)x[0].s_class;
    }
    virtual void setErrorHandler(QXmlErrorHandler* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        this->_binding->callMethod(476, (void*)this, x, true /*pure virtual*/);
    }
    virtual QXmlErrorHandler* errorHandler() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(477, (void*)this, x, true /*pure virtual*/);
        return (QXmlErrorHandler*)x[0].s_class;
    }
    virtual void setLexicalHandler(QXmlLexicalHandler* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        this->_binding->callMethod(478, (void*)this, x, true /*pure virtual*/);
    }
    virtual QXmlLexicalHandler* lexicalHandler() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(479, (void*)this, x, true /*pure virtual*/);
        return (QXmlLexicalHandler*)x[0].s_class;
    }
    virtual void setDeclHandler(QXmlDeclHandler* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        this->_binding->callMethod(480, (void*)this, x, true /*pure virtual*/);
    }
    virtual QXmlDeclHandler* declHandler() const {
        Smoke::StackItem x[1];
        this->_binding->callMethod(481, (void*)this, x, true /*pure virtual*/);
        return (QXmlDeclHandler*)x[0].s_class;
    }
    virtual bool parse(const QXmlInputSource& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        this->_binding->callMethod(482, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    virtual bool parse(const QXmlInputSource* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        this->_binding->callMethod(483, (void*)this, x, true /*pure virtual*/);
        return (bool)x[0].s_bool;
    }
    ~x_QXmlReader() { this->_binding->deleted(40, (void*)this); }
};
void xcall_QXmlReader(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QXmlReader *xself = (x_QXmlReader*)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: 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: 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: x_QXmlReader::x_21(args);	break;
        case 22: x_QXmlReader::x_22(args);	break;
        case 23: xself->x_23(args);	break;
        case 24: xself->x_24(args);	break;
        case 25: delete (QXmlReader*)xself;	break;
    }
}
class x_QXmlSimpleReader : public QXmlSimpleReader, 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) {
        // QXmlSimpleReader* QXmlSimpleReader()
        x_QXmlSimpleReader* xret = new x_QXmlSimpleReader();
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlSimpleReader() : QXmlSimpleReader() {}
    void x_2(Smoke::Stack x) {
        // bool feature(const QString&, bool*) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            bool xret = ((const x_QXmlSimpleReader*)this)->QXmlSimpleReader::feature(*(const QString*)x[1].s_class,(bool*)x[2].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_QXmlSimpleReader*)this)->feature(*(const QString*)x[1].s_class,(bool*)x[2].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_3(Smoke::Stack x) {
        // void setFeature(const QString&, bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            this->QXmlSimpleReader::setFeature(*(const QString*)x[1].s_class,(bool)x[2].s_bool);
            (void)x; // noop (for compiler warning)
        } else {
            this->setFeature(*(const QString*)x[1].s_class,(bool)x[2].s_bool);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_4(Smoke::Stack x) {
        // bool hasFeature(const QString&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            bool xret = ((const x_QXmlSimpleReader*)this)->QXmlSimpleReader::hasFeature(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_QXmlSimpleReader*)this)->hasFeature(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_5(Smoke::Stack x) {
        // void* property(const QString&, bool*) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            void* xret = ((const x_QXmlSimpleReader*)this)->QXmlSimpleReader::property(*(const QString*)x[1].s_class,(bool*)x[2].s_class);
            x[0].s_class = (void*)xret;
        } else {
            void* xret = ((const x_QXmlSimpleReader*)this)->property(*(const QString*)x[1].s_class,(bool*)x[2].s_class);
            x[0].s_class = (void*)xret;
        }
    }
    void x_6(Smoke::Stack x) {
        // void setProperty(const QString&, void*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            this->QXmlSimpleReader::setProperty(*(const QString*)x[1].s_class,(void*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setProperty(*(const QString*)x[1].s_class,(void*)x[2].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_7(Smoke::Stack x) {
        // bool hasProperty(const QString&) const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            bool xret = ((const x_QXmlSimpleReader*)this)->QXmlSimpleReader::hasProperty(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = ((const x_QXmlSimpleReader*)this)->hasProperty(*(const QString*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_8(Smoke::Stack x) {
        // void setEntityResolver(QXmlEntityResolver*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            this->QXmlSimpleReader::setEntityResolver((QXmlEntityResolver*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setEntityResolver((QXmlEntityResolver*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_9(Smoke::Stack x) {
        // QXmlEntityResolver* entityResolver() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            QXmlEntityResolver* xret = ((const x_QXmlSimpleReader*)this)->QXmlSimpleReader::entityResolver();
            x[0].s_class = (void*)xret;
        } else {
            QXmlEntityResolver* xret = ((const x_QXmlSimpleReader*)this)->entityResolver();
            x[0].s_class = (void*)xret;
        }
    }
    void x_10(Smoke::Stack x) {
        // void setDTDHandler(QXmlDTDHandler*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            this->QXmlSimpleReader::setDTDHandler((QXmlDTDHandler*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setDTDHandler((QXmlDTDHandler*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_11(Smoke::Stack x) {
        // QXmlDTDHandler* DTDHandler() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            QXmlDTDHandler* xret = ((const x_QXmlSimpleReader*)this)->QXmlSimpleReader::DTDHandler();
            x[0].s_class = (void*)xret;
        } else {
            QXmlDTDHandler* xret = ((const x_QXmlSimpleReader*)this)->DTDHandler();
            x[0].s_class = (void*)xret;
        }
    }
    void x_12(Smoke::Stack x) {
        // void setContentHandler(QXmlContentHandler*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            this->QXmlSimpleReader::setContentHandler((QXmlContentHandler*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setContentHandler((QXmlContentHandler*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_13(Smoke::Stack x) {
        // QXmlContentHandler* contentHandler() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            QXmlContentHandler* xret = ((const x_QXmlSimpleReader*)this)->QXmlSimpleReader::contentHandler();
            x[0].s_class = (void*)xret;
        } else {
            QXmlContentHandler* xret = ((const x_QXmlSimpleReader*)this)->contentHandler();
            x[0].s_class = (void*)xret;
        }
    }
    void x_14(Smoke::Stack x) {
        // void setErrorHandler(QXmlErrorHandler*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            this->QXmlSimpleReader::setErrorHandler((QXmlErrorHandler*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setErrorHandler((QXmlErrorHandler*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_15(Smoke::Stack x) {
        // QXmlErrorHandler* errorHandler() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            QXmlErrorHandler* xret = ((const x_QXmlSimpleReader*)this)->QXmlSimpleReader::errorHandler();
            x[0].s_class = (void*)xret;
        } else {
            QXmlErrorHandler* xret = ((const x_QXmlSimpleReader*)this)->errorHandler();
            x[0].s_class = (void*)xret;
        }
    }
    void x_16(Smoke::Stack x) {
        // void setLexicalHandler(QXmlLexicalHandler*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            this->QXmlSimpleReader::setLexicalHandler((QXmlLexicalHandler*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setLexicalHandler((QXmlLexicalHandler*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_17(Smoke::Stack x) {
        // QXmlLexicalHandler* lexicalHandler() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            QXmlLexicalHandler* xret = ((const x_QXmlSimpleReader*)this)->QXmlSimpleReader::lexicalHandler();
            x[0].s_class = (void*)xret;
        } else {
            QXmlLexicalHandler* xret = ((const x_QXmlSimpleReader*)this)->lexicalHandler();
            x[0].s_class = (void*)xret;
        }
    }
    void x_18(Smoke::Stack x) {
        // void setDeclHandler(QXmlDeclHandler*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            this->QXmlSimpleReader::setDeclHandler((QXmlDeclHandler*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        } else {
            this->setDeclHandler((QXmlDeclHandler*)x[1].s_class);
            (void)x; // noop (for compiler warning)
        }
    }
    void x_19(Smoke::Stack x) {
        // QXmlDeclHandler* declHandler() const
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            QXmlDeclHandler* xret = ((const x_QXmlSimpleReader*)this)->QXmlSimpleReader::declHandler();
            x[0].s_class = (void*)xret;
        } else {
            QXmlDeclHandler* xret = ((const x_QXmlSimpleReader*)this)->declHandler();
            x[0].s_class = (void*)xret;
        }
    }
    void x_20(Smoke::Stack x) {
        // bool parse(const QXmlInputSource&)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            bool xret = this->QXmlSimpleReader::parse(*(const QXmlInputSource*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->parse(*(const QXmlInputSource*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_21(Smoke::Stack x) {
        // bool parse(const QXmlInputSource*)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            bool xret = this->QXmlSimpleReader::parse((const QXmlInputSource*)x[1].s_class);
            x[0].s_bool = xret;
        } else {
            bool xret = this->parse((const QXmlInputSource*)x[1].s_class);
            x[0].s_bool = xret;
        }
    }
    void x_22(Smoke::Stack x) {
        // virtual bool parse(const QXmlInputSource*, bool)
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            bool xret = this->QXmlSimpleReader::parse((const QXmlInputSource*)x[1].s_class,(bool)x[2].s_bool);
            x[0].s_bool = xret;
        } else {
            bool xret = this->parse((const QXmlInputSource*)x[1].s_class,(bool)x[2].s_bool);
            x[0].s_bool = xret;
        }
    }
    void x_23(Smoke::Stack x) {
        // virtual bool parseContinue()
        if (dynamic_cast<__internal_SmokeClass*>(static_cast<QXmlSimpleReader*>(this))) {
            bool xret = this->QXmlSimpleReader::parseContinue();
            x[0].s_bool = xret;
        } else {
            bool xret = this->parseContinue();
            x[0].s_bool = xret;
        }
    }
    void x_24(Smoke::Stack x) {
        // bool feature(const QString&) const
        bool xret = ((const x_QXmlSimpleReader*)this)->QXmlSimpleReader::feature(*(const QString*)x[1].s_class,(bool*)0);
        x[0].s_bool = xret;
    }
    void x_25(Smoke::Stack x) {
        // void* property(const QString&) const
        void* xret = ((const x_QXmlSimpleReader*)this)->QXmlSimpleReader::property(*(const QString*)x[1].s_class,(bool*)0);
        x[0].s_class = (void*)xret;
    }
    virtual bool parse(const QXmlInputSource* x1, bool x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)x1;
        x[2].s_bool = x2;
        if (this->_binding->callMethod(510, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlSimpleReader::parse(x1, x2);
    }
    virtual bool parseContinue() {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(511, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlSimpleReader::parseContinue();
    }
    virtual bool feature(const QString& x1, bool* x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(490, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlSimpleReader::feature(x1, x2);
    }
    virtual void setFeature(const QString& x1, bool x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_bool = x2;
        if (this->_binding->callMethod(491, (void*)this, x)) return;
        this->QXmlSimpleReader::setFeature(x1, x2);
    }
    virtual bool hasFeature(const QString& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(492, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlSimpleReader::hasFeature(x1);
    }
    virtual void* property(const QString& x1, bool* x2) const {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(493, (void*)this, x)) return (void*)x[0].s_class;
        return this->QXmlSimpleReader::property(x1, x2);
    }
    virtual void setProperty(const QString& x1, void* x2) {
        Smoke::StackItem x[3];
        x[1].s_class = (void*)&x1;
        x[2].s_class = (void*)x2;
        if (this->_binding->callMethod(494, (void*)this, x)) return;
        this->QXmlSimpleReader::setProperty(x1, x2);
    }
    virtual bool hasProperty(const QString& x1) const {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(495, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlSimpleReader::hasProperty(x1);
    }
    virtual void setEntityResolver(QXmlEntityResolver* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(496, (void*)this, x)) return;
        this->QXmlSimpleReader::setEntityResolver(x1);
    }
    virtual QXmlEntityResolver* entityResolver() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(497, (void*)this, x)) return (QXmlEntityResolver*)x[0].s_class;
        return this->QXmlSimpleReader::entityResolver();
    }
    virtual void setDTDHandler(QXmlDTDHandler* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(498, (void*)this, x)) return;
        this->QXmlSimpleReader::setDTDHandler(x1);
    }
    virtual QXmlDTDHandler* DTDHandler() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(499, (void*)this, x)) return (QXmlDTDHandler*)x[0].s_class;
        return this->QXmlSimpleReader::DTDHandler();
    }
    virtual void setContentHandler(QXmlContentHandler* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(500, (void*)this, x)) return;
        this->QXmlSimpleReader::setContentHandler(x1);
    }
    virtual QXmlContentHandler* contentHandler() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(501, (void*)this, x)) return (QXmlContentHandler*)x[0].s_class;
        return this->QXmlSimpleReader::contentHandler();
    }
    virtual void setErrorHandler(QXmlErrorHandler* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(502, (void*)this, x)) return;
        this->QXmlSimpleReader::setErrorHandler(x1);
    }
    virtual QXmlErrorHandler* errorHandler() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(503, (void*)this, x)) return (QXmlErrorHandler*)x[0].s_class;
        return this->QXmlSimpleReader::errorHandler();
    }
    virtual void setLexicalHandler(QXmlLexicalHandler* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(504, (void*)this, x)) return;
        this->QXmlSimpleReader::setLexicalHandler(x1);
    }
    virtual QXmlLexicalHandler* lexicalHandler() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(505, (void*)this, x)) return (QXmlLexicalHandler*)x[0].s_class;
        return this->QXmlSimpleReader::lexicalHandler();
    }
    virtual void setDeclHandler(QXmlDeclHandler* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(506, (void*)this, x)) return;
        this->QXmlSimpleReader::setDeclHandler(x1);
    }
    virtual QXmlDeclHandler* declHandler() const {
        Smoke::StackItem x[1];
        if (this->_binding->callMethod(507, (void*)this, x)) return (QXmlDeclHandler*)x[0].s_class;
        return this->QXmlSimpleReader::declHandler();
    }
    virtual bool parse(const QXmlInputSource& x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)&x1;
        if (this->_binding->callMethod(508, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlSimpleReader::parse(x1);
    }
    virtual bool parse(const QXmlInputSource* x1) {
        Smoke::StackItem x[2];
        x[1].s_class = (void*)x1;
        if (this->_binding->callMethod(509, (void*)this, x)) return (bool)x[0].s_bool;
        return this->QXmlSimpleReader::parse(x1);
    }
    ~x_QXmlSimpleReader() { this->_binding->deleted(41, (void*)this); }
};
void xcall_QXmlSimpleReader(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QXmlSimpleReader *xself = (x_QXmlSimpleReader*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QXmlSimpleReader::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: 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: delete (QXmlSimpleReader*)xself;	break;
    }
}
class x_QXmlStreamWriter : public QXmlStreamWriter {
    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) {
        // QXmlStreamWriter* QXmlStreamWriter()
        x_QXmlStreamWriter* xret = new x_QXmlStreamWriter();
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlStreamWriter() : QXmlStreamWriter() {}
    static void x_2(Smoke::Stack x) {
        // QXmlStreamWriter* QXmlStreamWriter(QIODevice*)
        x_QXmlStreamWriter* xret = new x_QXmlStreamWriter((QIODevice*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlStreamWriter(QIODevice* x1) : QXmlStreamWriter(x1) {}
    static void x_3(Smoke::Stack x) {
        // QXmlStreamWriter* QXmlStreamWriter(QByteArray*)
        x_QXmlStreamWriter* xret = new x_QXmlStreamWriter((QByteArray*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlStreamWriter(QByteArray* x1) : QXmlStreamWriter(x1) {}
    static void x_4(Smoke::Stack x) {
        // QXmlStreamWriter* QXmlStreamWriter(QString*)
        x_QXmlStreamWriter* xret = new x_QXmlStreamWriter((QString*)x[1].s_class);
        x[0].s_class = (void*)xret;
    }
    explicit x_QXmlStreamWriter(QString* x1) : QXmlStreamWriter(x1) {}
    void x_5(Smoke::Stack x) {
        // void setDevice(QIODevice*)
        this->QXmlStreamWriter::setDevice((QIODevice*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_6(Smoke::Stack x) {
        // QIODevice* device() const
        QIODevice* xret = ((const x_QXmlStreamWriter*)this)->QXmlStreamWriter::device();
        x[0].s_class = (void*)xret;
    }
    void x_7(Smoke::Stack x) {
        // void setCodec(QTextCodec*)
        this->QXmlStreamWriter::setCodec((QTextCodec*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_8(Smoke::Stack x) {
        // void setCodec(const char*)
        this->QXmlStreamWriter::setCodec((const char*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_9(Smoke::Stack x) {
        // QTextCodec* codec() const
        QTextCodec* xret = ((const x_QXmlStreamWriter*)this)->QXmlStreamWriter::codec();
        x[0].s_class = (void*)xret;
    }
    void x_10(Smoke::Stack x) {
        // void setAutoFormatting(bool)
        this->QXmlStreamWriter::setAutoFormatting((bool)x[1].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_11(Smoke::Stack x) {
        // bool autoFormatting() const
        bool xret = ((const x_QXmlStreamWriter*)this)->QXmlStreamWriter::autoFormatting();
        x[0].s_bool = xret;
    }
    void x_12(Smoke::Stack x) {
        // void setAutoFormattingIndent(int)
        this->QXmlStreamWriter::setAutoFormattingIndent((int)x[1].s_int);
        (void)x; // noop (for compiler warning)
    }
    void x_13(Smoke::Stack x) {
        // int autoFormattingIndent() const
        int xret = ((const x_QXmlStreamWriter*)this)->QXmlStreamWriter::autoFormattingIndent();
        x[0].s_int = xret;
    }
    void x_14(Smoke::Stack x) {
        // void writeAttribute(const QString&, const QString&)
        this->QXmlStreamWriter::writeAttribute(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_15(Smoke::Stack x) {
        // void writeAttribute(const QString&, const QString&, const QString&)
        this->QXmlStreamWriter::writeAttribute(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_16(Smoke::Stack x) {
        // void writeAttribute(const QXmlStreamAttribute&)
        this->QXmlStreamWriter::writeAttribute(*(const QXmlStreamAttribute*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_17(Smoke::Stack x) {
        // void writeAttributes(const QXmlStreamAttributes&)
        this->QXmlStreamWriter::writeAttributes(*(const QXmlStreamAttributes*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_18(Smoke::Stack x) {
        // void writeCDATA(const QString&)
        this->QXmlStreamWriter::writeCDATA(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_19(Smoke::Stack x) {
        // void writeCharacters(const QString&)
        this->QXmlStreamWriter::writeCharacters(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_20(Smoke::Stack x) {
        // void writeComment(const QString&)
        this->QXmlStreamWriter::writeComment(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_21(Smoke::Stack x) {
        // void writeDTD(const QString&)
        this->QXmlStreamWriter::writeDTD(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_22(Smoke::Stack x) {
        // void writeEmptyElement(const QString&)
        this->QXmlStreamWriter::writeEmptyElement(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_23(Smoke::Stack x) {
        // void writeEmptyElement(const QString&, const QString&)
        this->QXmlStreamWriter::writeEmptyElement(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_24(Smoke::Stack x) {
        // void writeTextElement(const QString&, const QString&)
        this->QXmlStreamWriter::writeTextElement(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_25(Smoke::Stack x) {
        // void writeTextElement(const QString&, const QString&, const QString&)
        this->QXmlStreamWriter::writeTextElement(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class,*(const QString*)x[3].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_26(Smoke::Stack x) {
        // void writeEndDocument()
        this->QXmlStreamWriter::writeEndDocument();
        (void)x; // noop (for compiler warning)
    }
    void x_27(Smoke::Stack x) {
        // void writeEndElement()
        this->QXmlStreamWriter::writeEndElement();
        (void)x; // noop (for compiler warning)
    }
    void x_28(Smoke::Stack x) {
        // void writeEntityReference(const QString&)
        this->QXmlStreamWriter::writeEntityReference(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_29(Smoke::Stack x) {
        // void writeNamespace(const QString&, const QString&)
        this->QXmlStreamWriter::writeNamespace(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_30(Smoke::Stack x) {
        // void writeDefaultNamespace(const QString&)
        this->QXmlStreamWriter::writeDefaultNamespace(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_31(Smoke::Stack x) {
        // void writeProcessingInstruction(const QString&, const QString&)
        this->QXmlStreamWriter::writeProcessingInstruction(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_32(Smoke::Stack x) {
        // void writeStartDocument()
        this->QXmlStreamWriter::writeStartDocument();
        (void)x; // noop (for compiler warning)
    }
    void x_33(Smoke::Stack x) {
        // void writeStartDocument(const QString&)
        this->QXmlStreamWriter::writeStartDocument(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_34(Smoke::Stack x) {
        // void writeStartDocument(const QString&, bool)
        this->QXmlStreamWriter::writeStartDocument(*(const QString*)x[1].s_class,(bool)x[2].s_bool);
        (void)x; // noop (for compiler warning)
    }
    void x_35(Smoke::Stack x) {
        // void writeStartElement(const QString&)
        this->QXmlStreamWriter::writeStartElement(*(const QString*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_36(Smoke::Stack x) {
        // void writeStartElement(const QString&, const QString&)
        this->QXmlStreamWriter::writeStartElement(*(const QString*)x[1].s_class,*(const QString*)x[2].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_37(Smoke::Stack x) {
        // void writeCurrentToken(const QXmlStreamReader&)
        this->QXmlStreamWriter::writeCurrentToken(*(const QXmlStreamReader*)x[1].s_class);
        (void)x; // noop (for compiler warning)
    }
    void x_38(Smoke::Stack x) {
        // bool hasError() const
        bool xret = ((const x_QXmlStreamWriter*)this)->QXmlStreamWriter::hasError();
        x[0].s_bool = xret;
    }
    void x_39(Smoke::Stack x) {
        // void writeNamespace(const QString&)
        this->QXmlStreamWriter::writeNamespace(*(const QString*)x[1].s_class,(const QString&)QString());
        (void)x; // noop (for compiler warning)
    }
    void x_40(Smoke::Stack x) {
        // void writeProcessingInstruction(const QString&)
        this->QXmlStreamWriter::writeProcessingInstruction(*(const QString*)x[1].s_class,(const QString&)QString());
        (void)x; // noop (for compiler warning)
    }
    ~x_QXmlStreamWriter() { this->_binding->deleted(45, (void*)this); }
};
void xcall_QXmlStreamWriter(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QXmlStreamWriter *xself = (x_QXmlStreamWriter*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QXmlStreamWriter::x_1(args);	break;
        case 2: x_QXmlStreamWriter::x_2(args);	break;
        case 3: x_QXmlStreamWriter::x_3(args);	break;
        case 4: x_QXmlStreamWriter::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: delete (QXmlStreamWriter*)xself;	break;
    }
}
class x_QGlobalSpace {
    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) {
        // static QTextStream& operator<<(QTextStream&, const QDomNode&)
        QTextStream& xret = operator<<(*(QTextStream*)x[1].s_class,*(const QDomNode*)x[2].s_class);
        x[0].s_class = (void*)&xret;
    }
    ~x_QGlobalSpace() { this->_binding->deleted(22, (void*)this); }
};
void xcall_QGlobalSpace(Smoke::Index xi, void *obj, Smoke::Stack args) {
    x_QGlobalSpace *xself = (x_QGlobalSpace*)obj;
    switch(xi) {
        case 0: xself->x_0(args);	break;
        case 1: x_QGlobalSpace::x_1(args);	break;
    }
}

}
