<config>

 <moduleName>qtxmlpatterns</moduleName>
 <parentModules>
     <module>qtcore</module>
 </parentModules>
 <parts>1</parts>
 <scalarTypes>
     <!-- QString is a class, but represented as a scalar (#) in munged names -->
     <typeName>QString</typeName>
 </scalarTypes>
 <voidpTypes>
     <!-- both are classes, but they are represented as Smoke::t_voidp -->
     <typeName>QStringList</typeName>
     <typeName>QString</typeName>
 </voidpTypes>
 <exclude>
     <!-- we don't want private stuff in smoke.. -->
     <signature>.*::d</signature>
     <signature>.*::d_ptr</signature>
     <signature>.*::q_ptr</signature>
     <signature>.*\(.*Private.*\).*</signature>
     <!-- Thread related stuff belongs to the bindings language -->
     <signature>.*QtConcurrent.*</signature>
     <signature>.*QAbstractXmlForwardIterator.*</signature>
     <signature>.*QPatternist::ItemType.*</signature>
     <!-- The following methods aren't in the lib -->
     <signature>.*QXmlNodeModelIndex::namespaceBindings.*</signature>
     <signature>.*QXmlNodeModelIndex::sendNamespaces.*</signature>
     <signature>.*QXmlNodeModelIndex::compareOrder.*</signature>
     <signature>.*QXmlNodeModelIndex::isDeepEqual.*</signature>
     <signature>.*QXmlNodeModelIndex::kind.*</signature>
     <signature>.*QXmlNodeModelIndex::baseUri.*</signature>
     <signature>.*QXmlNodeModelIndex::documentUri.*</signature>
     <signature>.*QXmlNodeModelIndex::root.*</signature>
     <signature>.*QXmlNodeModelIndex::name.*</signature>
     <signature>.*QXmlNodeModelIndex::is\(.*</signature>
     <signature>.*QXmlNodeModelIndex::stringValue.*</signature>
     <signature>.*QXmlNodeModelIndex::namespaceForPrefix.*</signature>         
     <signature>.*QXmlName::QXmlName.*short.*</signature>
     <signature>.*QXmlName::code().*</signature>
     <signature>.*QXmlName::setLocalName.*short.*</signature>
     <signature>.*QXmlName::setNamespaceURI.*</signature>
     <signature>.*QXmlName::setPrefix.*short.*</signature>
     <signature>.*QXmlName::isLexicallyEqual.*</signature>
     <signature>.*short.*QXmlName::namespaceURI().*</signature>
     <signature>.*QXmlName::hasNamespace().*</signature>
     <signature>.*QXmlName::hasPrefix().*</signature>
     <signature>.*short.*QXmlName::prefix().*</signature>
     <signature>.*short.*QXmlName::localName().*</signature>
     <!-- this doesn't link, internal stuff.. -->
     <signature>.*qFindString.*</signature>
     <!-- windows internal helper functions -->
     <signature>.*qFrom.*Endian_helper.*</signature>
</exclude>
 <functions>
     <!-- include functions starting with 'q' -->
     <name>^q.*</name>
     <name>.*::q.*</name>
     <!-- and operators -->
     <name>.*operator.*</name>
 </functions>
 <classList>
     <class>QAbstractMessageHandler</class>
     <class>QAbstractUriResolver</class>
     <class>QAbstractXmlNodeModel</class>
     <class>QAbstractXmlReceiver</class>
     <class>QSimpleXmlNodeModel</class>
     <class>QSourceLocation</class>
     <class>QXmlFormatter</class>
     <class>QXmlItem</class>
     <class>QXmlName</class>
     <class>QXmlNamePool</class>
     <class>QXmlNodeModelIndex</class>
     <class>QXmlQuery</class>
     <class>QXmlResultItems</class>
     <class>QXmlSchema</class>
     <class>QXmlSchemaValidator</class>
     <class>QXmlSerializer</class>
   </classList>

</config>