//This is file has been generated by xmltokross, you should not edit this file but the files used to generate it.

#include <QtCore/QObject>
#include <QtCore/QVariant>
#include <kross/core/manager.h>
#include <kross/core/wrapperinterface.h>
#include <language/duchain/identifier.h>
#include <language/duchain/indexedstring.h>

class KrossKDevelopIndexedIdentifier : public QObject, public Kross::WrapperInterface
{
	Q_OBJECT
	public:
		KrossKDevelopIndexedIdentifier(KDevelop::IndexedIdentifier* obj, QObject* parent=0) : QObject(parent), wrapped(obj)		{ setObjectName("KDevelop::IndexedIdentifier"); }
		void* wrappedObject() const { return wrapped; }

		Q_SCRIPTABLE KDevelop::IndexedIdentifier operator=(const KDevelop::Identifier& x0) { return wrapped->operator=(x0); }
		Q_SCRIPTABLE KDevelop::IndexedIdentifier operator=(const KDevelop::IndexedIdentifier& x0) { return wrapped->operator=(x0); }
		Q_SCRIPTABLE bool operator==(const KDevelop::IndexedIdentifier& x0) const { return wrapped->operator==(x0); }
		Q_SCRIPTABLE bool operator!=(const KDevelop::IndexedIdentifier& x0) const { return wrapped->operator!=(x0); }
		Q_SCRIPTABLE bool operator==(const KDevelop::Identifier& x0) const { return wrapped->operator==(x0); }
		Q_SCRIPTABLE bool isEmpty() const { return wrapped->isEmpty(); }
		Q_SCRIPTABLE KDevelop::Identifier identifier() const { return wrapped->identifier(); }
		Q_SCRIPTABLE uint getIndex() const { return wrapped->getIndex(); }
	private:
		KDevelop::IndexedIdentifier* wrapped;
};

class KrossKDevelopIndexedQualifiedIdentifier : public QObject, public Kross::WrapperInterface
{
	Q_OBJECT
	public:
		KrossKDevelopIndexedQualifiedIdentifier(KDevelop::IndexedQualifiedIdentifier* obj, QObject* parent=0) : QObject(parent), wrapped(obj)		{ setObjectName("KDevelop::IndexedQualifiedIdentifier"); }
		void* wrappedObject() const { return wrapped; }

		Q_SCRIPTABLE KDevelop::IndexedQualifiedIdentifier operator=(const KDevelop::QualifiedIdentifier& x0) { return wrapped->operator=(x0); }
		Q_SCRIPTABLE KDevelop::IndexedQualifiedIdentifier operator=(const KDevelop::IndexedQualifiedIdentifier& x0) { return wrapped->operator=(x0); }
		Q_SCRIPTABLE bool operator==(const KDevelop::IndexedQualifiedIdentifier& x0) const { return wrapped->operator==(x0); }
		Q_SCRIPTABLE bool operator==(const KDevelop::QualifiedIdentifier& x0) const { return wrapped->operator==(x0); }
		Q_SCRIPTABLE bool operator<(const KDevelop::IndexedQualifiedIdentifier& x0) const { return wrapped->operator<(x0); }
		Q_SCRIPTABLE bool isValid() const { return wrapped->isValid(); }
		Q_SCRIPTABLE KDevelop::QualifiedIdentifier identifier() const { return wrapped->identifier(); }
		Q_SCRIPTABLE uint getIndex() const { return wrapped->getIndex(); }
	private:
		KDevelop::IndexedQualifiedIdentifier* wrapped;
};

class KrossKDevelopIdentifier : public QObject, public Kross::WrapperInterface
{
	Q_OBJECT
	public:
		KrossKDevelopIdentifier(KDevelop::Identifier* obj, QObject* parent=0) : QObject(parent), wrapped(obj)		{ setObjectName("KDevelop::Identifier"); }
		void* wrappedObject() const { return wrapped; }

		Q_SCRIPTABLE KDevelop::Identifier unique(int x0) { return wrapped->unique(x0); }
		Q_SCRIPTABLE bool isUnique() const { return wrapped->isUnique(); }
		Q_SCRIPTABLE int uniqueToken() const { return wrapped->uniqueToken(); }
		Q_SCRIPTABLE void setUnique(int x0) { wrapped->setUnique(x0); }
		Q_SCRIPTABLE KDevelop::IndexedString identifier() const { return wrapped->identifier(); }
		Q_SCRIPTABLE void setIdentifier(const QString& x0) { wrapped->setIdentifier(x0); }
		Q_SCRIPTABLE void setIdentifier(const KDevelop::IndexedString& x0) { wrapped->setIdentifier(x0); }
		Q_SCRIPTABLE uint hash() const { return wrapped->hash(); }
		Q_SCRIPTABLE bool nameEquals(const KDevelop::Identifier& x0) const { return wrapped->nameEquals(x0); }
		Q_SCRIPTABLE KDevelop::IndexedTypeIdentifier templateIdentifier(int x0) const { return wrapped->templateIdentifier(x0); }
		Q_SCRIPTABLE uint templateIdentifiersCount() const { return wrapped->templateIdentifiersCount(); }
		Q_SCRIPTABLE void appendTemplateIdentifier(const KDevelop::IndexedTypeIdentifier& x0) { wrapped->appendTemplateIdentifier(x0); }
		Q_SCRIPTABLE void clearTemplateIdentifiers() { wrapped->clearTemplateIdentifiers(); }
		Q_SCRIPTABLE void setTemplateIdentifiers(const QList< KDevelop::IndexedTypeIdentifier >& x0) { wrapped->setTemplateIdentifiers(x0); }
		Q_SCRIPTABLE QString toString() const { return wrapped->toString(); }
		Q_SCRIPTABLE bool operator==(const KDevelop::Identifier& x0) const { return wrapped->operator==(x0); }
		Q_SCRIPTABLE bool operator!=(const KDevelop::Identifier& x0) const { return wrapped->operator!=(x0); }
		Q_SCRIPTABLE KDevelop::Identifier operator=(const KDevelop::Identifier& x0) { return wrapped->operator=(x0); }
		Q_SCRIPTABLE bool isEmpty() const { return wrapped->isEmpty(); }
		Q_SCRIPTABLE uint index() const { return wrapped->index(); }
	private:
		KDevelop::Identifier* wrapped;
};

class KrossKDevelopQualifiedIdentifier : public QObject, public Kross::WrapperInterface
{
	Q_OBJECT
	public:
		KrossKDevelopQualifiedIdentifier(KDevelop::QualifiedIdentifier* obj, QObject* parent=0) : QObject(parent), wrapped(obj)		{ setObjectName("KDevelop::QualifiedIdentifier"); }
		void* wrappedObject() const { return wrapped; }

		Q_SCRIPTABLE void push(const KDevelop::Identifier& x0) { wrapped->push(x0); }
		Q_SCRIPTABLE void push(const KDevelop::QualifiedIdentifier& x0) { wrapped->push(x0); }
		Q_SCRIPTABLE void pop() { wrapped->pop(); }
		Q_SCRIPTABLE void clear() { wrapped->clear(); }
		Q_SCRIPTABLE bool isEmpty() const { return wrapped->isEmpty(); }
		Q_SCRIPTABLE int count() const { return wrapped->count(); }
		Q_SCRIPTABLE KDevelop::Identifier first() const { return wrapped->first(); }
		Q_SCRIPTABLE KDevelop::Identifier last() const { return wrapped->last(); }
		Q_SCRIPTABLE KDevelop::Identifier top() const { return wrapped->top(); }
		Q_SCRIPTABLE KDevelop::Identifier at(int x0) const { return wrapped->at(x0); }
		Q_SCRIPTABLE KDevelop::QualifiedIdentifier mid(int x0, int x1=-1) const { return wrapped->mid(x0, x1); }
		Q_SCRIPTABLE KDevelop::QualifiedIdentifier left(int x0) const { return wrapped->left(x0); }
		Q_SCRIPTABLE bool explicitlyGlobal() const { return wrapped->explicitlyGlobal(); }
		Q_SCRIPTABLE void setExplicitlyGlobal(bool x0) { wrapped->setExplicitlyGlobal(x0); }
		Q_SCRIPTABLE bool isQualified() const { return wrapped->isQualified(); }
		Q_SCRIPTABLE bool isExpression() const { return wrapped->isExpression(); }
		Q_SCRIPTABLE void setIsExpression(bool x0) { wrapped->setIsExpression(x0); }
		Q_SCRIPTABLE QString toString(bool x0=false) const { return wrapped->toString(x0); }
		Q_SCRIPTABLE QStringList toStringList() const { return wrapped->toStringList(); }
		Q_SCRIPTABLE KDevelop::QualifiedIdentifier operator+(const KDevelop::QualifiedIdentifier& x0) const { return wrapped->operator+(x0); }
		Q_SCRIPTABLE KDevelop::QualifiedIdentifier operator+=(const KDevelop::QualifiedIdentifier& x0) { return wrapped->operator+=(x0); }
		Q_SCRIPTABLE KDevelop::QualifiedIdentifier operator+(const KDevelop::Identifier& x0) const { return wrapped->operator+(x0); }
		Q_SCRIPTABLE KDevelop::QualifiedIdentifier operator+=(const KDevelop::Identifier& x0) { return wrapped->operator+=(x0); }
		Q_SCRIPTABLE KDevelop::QualifiedIdentifier merge(const KDevelop::QualifiedIdentifier& x0) const { return wrapped->merge(x0); }
		Q_SCRIPTABLE bool operator==(const KDevelop::QualifiedIdentifier& x0) const { return wrapped->operator==(x0); }
		Q_SCRIPTABLE bool operator!=(const KDevelop::QualifiedIdentifier& x0) const { return wrapped->operator!=(x0); }
		Q_SCRIPTABLE KDevelop::QualifiedIdentifier operator=(const KDevelop::QualifiedIdentifier& x0) { return wrapped->operator=(x0); }
		Q_SCRIPTABLE bool beginsWith(const KDevelop::QualifiedIdentifier& x0) const { return wrapped->beginsWith(x0); }
		Q_SCRIPTABLE uint index() const { return wrapped->index(); }
		Q_SCRIPTABLE bool inRepository() const { return wrapped->inRepository(); }
		Q_SCRIPTABLE KDevelop::QualifiedIdentifier::HashType hash() const { return wrapped->hash(); }
		Q_SCRIPTABLE void findByHash(KDevelop::QualifiedIdentifier::HashType x0, KDevVarLengthArray< KDevelop::QualifiedIdentifier, 256 >& x1) { wrapped->findByHash(x0, x1); }
	private:
		KDevelop::QualifiedIdentifier* wrapped;
};

class KrossKDevelopIndexedTypeIdentifier : public QObject, public Kross::WrapperInterface
{
	Q_OBJECT
	public:
		KrossKDevelopIndexedTypeIdentifier(KDevelop::IndexedTypeIdentifier* obj, QObject* parent=0) : QObject(parent), wrapped(obj)		{ setObjectName("KDevelop::IndexedTypeIdentifier"); }
		void* wrappedObject() const { return wrapped; }

		Q_SCRIPTABLE bool isReference() const { return wrapped->isReference(); }
		Q_SCRIPTABLE void setIsReference(bool x0) { wrapped->setIsReference(x0); }
		Q_SCRIPTABLE bool isConstant() const { return wrapped->isConstant(); }
		Q_SCRIPTABLE void setIsConstant(bool x0) { wrapped->setIsConstant(x0); }
		Q_SCRIPTABLE KDevelop::IndexedQualifiedIdentifier identifier() const { return wrapped->identifier(); }
		Q_SCRIPTABLE void setIdentifier(KDevelop::IndexedQualifiedIdentifier x0) { wrapped->setIdentifier(x0); }
		Q_SCRIPTABLE int pointerDepth() const { return wrapped->pointerDepth(); }
		Q_SCRIPTABLE void setPointerDepth(int x0) { wrapped->setPointerDepth(x0); }
		Q_SCRIPTABLE bool isConstPointer(int x0) const { return wrapped->isConstPointer(x0); }
		Q_SCRIPTABLE void setIsConstPointer(int x0, bool x1) { wrapped->setIsConstPointer(x0, x1); }
		Q_SCRIPTABLE QString toString(bool x0=false) const { return wrapped->toString(x0); }
		Q_SCRIPTABLE uint hash() const { return wrapped->hash(); }
		Q_SCRIPTABLE bool operator==(const KDevelop::IndexedTypeIdentifier& x0) const { return wrapped->operator==(x0); }
		Q_SCRIPTABLE bool operator!=(const KDevelop::IndexedTypeIdentifier& x0) const { return wrapped->operator!=(x0); }
	private:
		KDevelop::IndexedTypeIdentifier* wrapped;
};

bool krossidentifier_registerHandler(const QByteArray& name, Kross::MetaTypeHandler::FunctionPtr* handler)
{ Kross::Manager::self().registerMetaTypeHandler(name, handler); return false; }

namespace Handlers
{
QVariant _kDevelopIndexedTypeIdentifierHandler(void* type)
{
	if(!type) return QVariant();
	KDevelop::IndexedTypeIdentifier* t=static_cast<KDevelop::IndexedTypeIdentifier*>(type);
	Q_ASSERT(dynamic_cast<KDevelop::IndexedTypeIdentifier*>(t));
	return qVariantFromValue((QObject*) new KrossKDevelopIndexedTypeIdentifier(t, 0));
}
bool b_KDevelopIndexedTypeIdentifier1=krossidentifier_registerHandler("IndexedTypeIdentifier*", _kDevelopIndexedTypeIdentifierHandler);
bool b_KDevelopIndexedTypeIdentifier=krossidentifier_registerHandler("KDevelop::IndexedTypeIdentifier*", _kDevelopIndexedTypeIdentifierHandler);
QVariant kDevelopIndexedTypeIdentifierHandler(KDevelop::IndexedTypeIdentifier* type){ return _kDevelopIndexedTypeIdentifierHandler(type); }
QVariant kDevelopIndexedTypeIdentifierHandler(const KDevelop::IndexedTypeIdentifier* type) { return _kDevelopIndexedTypeIdentifierHandler((void*) type); }

QVariant _kDevelopQualifiedIdentifierHandler(void* type)
{
	if(!type) return QVariant();
	KDevelop::QualifiedIdentifier* t=static_cast<KDevelop::QualifiedIdentifier*>(type);
	Q_ASSERT(dynamic_cast<KDevelop::QualifiedIdentifier*>(t));
	return qVariantFromValue((QObject*) new KrossKDevelopQualifiedIdentifier(t, 0));
}
bool b_KDevelopQualifiedIdentifier1=krossidentifier_registerHandler("QualifiedIdentifier*", _kDevelopQualifiedIdentifierHandler);
bool b_KDevelopQualifiedIdentifier=krossidentifier_registerHandler("KDevelop::QualifiedIdentifier*", _kDevelopQualifiedIdentifierHandler);
QVariant kDevelopQualifiedIdentifierHandler(KDevelop::QualifiedIdentifier* type){ return _kDevelopQualifiedIdentifierHandler(type); }
QVariant kDevelopQualifiedIdentifierHandler(const KDevelop::QualifiedIdentifier* type) { return _kDevelopQualifiedIdentifierHandler((void*) type); }

QVariant _kDevelopIdentifierHandler(void* type)
{
	if(!type) return QVariant();
	KDevelop::Identifier* t=static_cast<KDevelop::Identifier*>(type);
	Q_ASSERT(dynamic_cast<KDevelop::Identifier*>(t));
	return qVariantFromValue((QObject*) new KrossKDevelopIdentifier(t, 0));
}
bool b_KDevelopIdentifier1=krossidentifier_registerHandler("Identifier*", _kDevelopIdentifierHandler);
bool b_KDevelopIdentifier=krossidentifier_registerHandler("KDevelop::Identifier*", _kDevelopIdentifierHandler);
QVariant kDevelopIdentifierHandler(KDevelop::Identifier* type){ return _kDevelopIdentifierHandler(type); }
QVariant kDevelopIdentifierHandler(const KDevelop::Identifier* type) { return _kDevelopIdentifierHandler((void*) type); }

QVariant _kDevelopIndexedQualifiedIdentifierHandler(void* type)
{
	if(!type) return QVariant();
	KDevelop::IndexedQualifiedIdentifier* t=static_cast<KDevelop::IndexedQualifiedIdentifier*>(type);
	Q_ASSERT(dynamic_cast<KDevelop::IndexedQualifiedIdentifier*>(t));
	return qVariantFromValue((QObject*) new KrossKDevelopIndexedQualifiedIdentifier(t, 0));
}
bool b_KDevelopIndexedQualifiedIdentifier1=krossidentifier_registerHandler("IndexedQualifiedIdentifier*", _kDevelopIndexedQualifiedIdentifierHandler);
bool b_KDevelopIndexedQualifiedIdentifier=krossidentifier_registerHandler("KDevelop::IndexedQualifiedIdentifier*", _kDevelopIndexedQualifiedIdentifierHandler);
QVariant kDevelopIndexedQualifiedIdentifierHandler(KDevelop::IndexedQualifiedIdentifier* type){ return _kDevelopIndexedQualifiedIdentifierHandler(type); }
QVariant kDevelopIndexedQualifiedIdentifierHandler(const KDevelop::IndexedQualifiedIdentifier* type) { return _kDevelopIndexedQualifiedIdentifierHandler((void*) type); }

QVariant _kDevelopIndexedIdentifierHandler(void* type)
{
	if(!type) return QVariant();
	KDevelop::IndexedIdentifier* t=static_cast<KDevelop::IndexedIdentifier*>(type);
	Q_ASSERT(dynamic_cast<KDevelop::IndexedIdentifier*>(t));
	return qVariantFromValue((QObject*) new KrossKDevelopIndexedIdentifier(t, 0));
}
bool b_KDevelopIndexedIdentifier1=krossidentifier_registerHandler("IndexedIdentifier*", _kDevelopIndexedIdentifierHandler);
bool b_KDevelopIndexedIdentifier=krossidentifier_registerHandler("KDevelop::IndexedIdentifier*", _kDevelopIndexedIdentifierHandler);
QVariant kDevelopIndexedIdentifierHandler(KDevelop::IndexedIdentifier* type){ return _kDevelopIndexedIdentifierHandler(type); }
QVariant kDevelopIndexedIdentifierHandler(const KDevelop::IndexedIdentifier* type) { return _kDevelopIndexedIdentifierHandler((void*) type); }

}
#include "krossidentifier.moc"
