[gobject-introspection] Revert "Generate appropriate docs for ListModel with element-type"



commit 6dc8402c267a5855219b77be2d649f3a9e84d817
Author: Emmanuele Bassi <ebassi gnome org>
Date:   Sun Apr 26 13:11:15 2020 +0100

    Revert "Generate appropriate docs for ListModel with element-type"
    
    This reverts commit ffe3e435e0b7943a0872034223b5f6ea02258ffa.
    
    See: #336

 giscanner/docwriter.py                                 | 18 +++++-------------
 .../Regress.test_list_model_object.page                |  4 ++--
 .../Regress.test_list_model_object.page                |  4 ++--
 3 files changed, 9 insertions(+), 17 deletions(-)
---
diff --git a/giscanner/docwriter.py b/giscanner/docwriter.py
index e4a8f7c5..786da80d 100644
--- a/giscanner/docwriter.py
+++ b/giscanner/docwriter.py
@@ -793,11 +793,7 @@ class DocFormatterPython(DocFormatterIntrospectableBase):
         return fundamental_types.get(name, name)
 
     def format_type(self, type_, link=False):
-        if isinstance(type_, ast.List):
-            if type_.name == 'Gio.ListModel':
-                return 'Gio.ListModel(item_type=' + self.format_type(type_.element_type) + ')'
-            return '[' + self.format_type(type_.element_type) + ']'
-        elif isinstance(type_, ast.Array):
+        if isinstance(type_, (ast.List, ast.Array)):
             return '[' + self.format_type(type_.element_type) + ']'
         elif isinstance(type_, ast.Map):
             return '{%s: %s}' % (self.format_type(type_.key_type),
@@ -934,14 +930,10 @@ class DocFormatterGjs(DocFormatterIntrospectableBase):
         return fundamental_types.get(name, name)
 
     def format_type(self, type_, link=False):
-        if isinstance(type_, ast.Array):
-            if type_.element_type.target_fundamental in ('gint8', 'guint8'):
-                return 'ByteArray'
-            else:
-                return 'Array(' + self.format_type(type_.element_type, link) + ')'
-        elif isinstance(type_, ast.List):
-            if type_.name == 'Gio.ListModel':
-                return 'Gio.ListModel({item_type: ' + self.format_type(type_.element_type) + '})'
+        if isinstance(type_, ast.Array) and \
+           type_.element_type.target_fundamental in ('gint8', 'guint8'):
+            return 'ByteArray'
+        elif isinstance(type_, (ast.List, ast.Array)):
             return 'Array(' + self.format_type(type_.element_type, link) + ')'
         elif isinstance(type_, ast.Map):
             return '{%s: %s}' % (self.format_type(type_.key_type, link),
diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_list_model_object.page 
b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_list_model_object.page
index 618ca7e3..a9dd90d7 100644
--- a/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_list_model_object.page
+++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.test_list_model_object.page
@@ -9,14 +9,14 @@
     <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
-        <api:type>Gio.ListModel({item_type: Regress.TestObj})</api:type>
+        <api:type>Array(Regress.TestObj)</api:type>
       </api:returns>
       <api:name>regress_test_list_model_object</api:name>
     </api:function>
   </info>
   <title>Regress.test_list_model_object</title>
   <synopsis><code mime="text/x-gjs">
-function test_list_model_object(): Gio.ListModel({item_type: Regress.TestObj}) {
+function test_list_model_object(): Array(<link xref="Regress.TestObj">Regress.TestObj</link>) {
     // Gjs wrapper for regress_test_list_model_object()
 }
   </code></synopsis>
diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.test_list_model_object.page 
b/tests/scanner/Regress-1.0-Python-expected/Regress.test_list_model_object.page
index d9dca201..a4382c9d 100644
--- a/tests/scanner/Regress-1.0-Python-expected/Regress.test_list_model_object.page
+++ b/tests/scanner/Regress-1.0-Python-expected/Regress.test_list_model_object.page
@@ -9,14 +9,14 @@
     <link xref="index" group="function" type="guide"/>
     <api:function>
       <api:returns>
-        <api:type>Gio.ListModel(item_type=Regress.TestObj)</api:type>
+        <api:type>[Regress.TestObj]</api:type>
       </api:returns>
       <api:name>regress_test_list_model_object</api:name>
     </api:function>
   </info>
   <title>Regress.test_list_model_object</title>
   <synopsis><code mime="text/x-python">
-@returns(Gio.ListModel(item_type=Regress.TestObj))
+@returns([Regress.TestObj])
 def test_list_model_object():
     # Python wrapper for regress_test_list_model_object()
   </code></synopsis>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]