diff generator/abstractmetalang.h @ 335:1e9092e20a67

merge signals branch into default
author eldar1@eldar1-laptop
date Sun, 07 Feb 2010 16:04:36 +0000
parents baaf74652f4c
children 18bd68f586c6
line wrap: on
line diff
--- a/generator/abstractmetalang.h	Sat Dec 19 18:43:32 2009 +0300
+++ b/generator/abstractmetalang.h	Sun Feb 07 16:04:36 2010 +0000
@@ -406,10 +406,11 @@
         EqualReturnType             = 0x00000010,
         EqualDefaultValueOverload   = 0x00000020,
         EqualModifiedName           = 0x00000040,
+        EqualConstness              = 0x00000080,
 
         NameLessThan                = 0x00001000,
 
-        PrettySimilar               = EqualName | EqualArguments,
+        PrettySimilar               = EqualName | EqualArguments | EqualConstness,
         Equal                       = 0x0000001f,
         NotEqual                    = 0x00001000
     };
@@ -440,7 +441,7 @@
 
     QString modifiedName() const;
 
-    QString minimalSignature() const;
+    QString minimalSignature(int reduce = 0) const;
     QStringList possibleIntrospectionCompatibleSignatures() const;
 
     QString marshalledName(bool classIsOwner = true) const;
@@ -713,6 +714,7 @@
     bool hasSignal(const AbstractMetaFunction *f) const;
 
     bool hasConstructors() const;
+    AbstractMetaFunction *copyConstructor() const;
 
     void addDefaultConstructor();
 
@@ -845,6 +847,7 @@
     bool isTypeAlias() const { return m_is_type_alias; }
 
     const QStringList &depends() { return m_type_entry->depends(); }
+    AbstractMetaFunctionList allFunctions() const { return m_functions; }
 
     bool needsConversionFunc;
 private:
@@ -969,4 +972,12 @@
                           | NotRemovedFromTargetLang);
 }
 
+inline bool isNativeContainer(AbstractMetaType *argumentType)
+{
+    if (argumentType && argumentType->isContainer())
+        if (((const ContainerTypeEntry *)argumentType->typeEntry())->isQList())
+            return true;
+    return false;
+}
+
 #endif // ABSTRACTMETALANG_H