[gobject-introspection] Revert "giscanner: don't accept (allow-none) on Returns:"



commit 3c9882840e75d60b82aa26e6494e494d994279c3
Author: Ryan Lortie <desrt desrt ca>
Date:   Tue May 6 13:38:03 2014 -0400

    Revert "giscanner: don't accept (allow-none) on Returns:"
    
    This reverts commit 0839e696e9fbc1942ac5c61054de3b47e9578152.
    
    This was accidentally picked up by my 'git bz apply' against the bug as
    I was getting ready to push the last set of changes.

 giscanner/annotationparser.py                      |    2 +-
 .../annotationparser/gi/annotation_allow_none.xml  |    9 ++++-
 tests/scanner/annotationparser/gi/tag.xml          |   29 ++++++++-----------
 tests/scanner/annotationparser/gi/tag_returns.xml  |   30 ++++++++++----------
 .../gtkdoc/annotations/tester.c.xml                |    3 --
 tests/scanner/regress.c                            |    2 +-
 6 files changed, 36 insertions(+), 39 deletions(-)
---
diff --git a/giscanner/annotationparser.py b/giscanner/annotationparser.py
index a167ff9..ecbfdce 100644
--- a/giscanner/annotationparser.py
+++ b/giscanner/annotationparser.py
@@ -981,7 +981,7 @@ class GtkDocTag(GtkDocAnnotatable):
 
     __slots__ = ('name', 'value', 'description')
 
-    valid_annotations = (ANN_ARRAY, ANN_ATTRIBUTES, ANN_ELEMENT_TYPE, ANN_SKIP,
+    valid_annotations = (ANN_ALLOW_NONE, ANN_ARRAY, ANN_ATTRIBUTES, ANN_ELEMENT_TYPE, ANN_SKIP,
                          ANN_TRANSFER, ANN_TYPE)
 
     def __init__(self, name, position=None):
diff --git a/tests/scanner/annotationparser/gi/annotation_allow_none.xml 
b/tests/scanner/annotationparser/gi/annotation_allow_none.xml
index 877c60f..ae6b3b3 100644
--- a/tests/scanner/annotationparser/gi/annotation_allow_none.xml
+++ b/tests/scanner/annotationparser/gi/annotation_allow_none.xml
@@ -10,7 +10,7 @@
  *
  * This is a test for out arguments
  *
- * Return value: an int
+ * Return value: (allow-none): an int
  */</input>
   <parser>
     <docblock>
@@ -39,6 +39,11 @@
       <tags>
         <tag>
           <name>returns</name>
+          <annotations>
+            <annotation>
+              <name>allow-none</name>
+            </annotation>
+          </annotations>
           <description>an int</description>
         </tag>
       </tags>
@@ -51,7 +56,7 @@
  *
  * This is a test for out arguments
  *
- * Returns: an int
+ * Returns: (allow-none): an int
  */</output>
 </test>
 
diff --git a/tests/scanner/annotationparser/gi/tag.xml b/tests/scanner/annotationparser/gi/tag.xml
index a89b3ad..8480d4b 100644
--- a/tests/scanner/annotationparser/gi/tag.xml
+++ b/tests/scanner/annotationparser/gi/tag.xml
@@ -8,7 +8,7 @@
  *
  * Forgotten colon below will result in a warning.
  *
- * Returns: (transfer none) return value
+ * Returns: (allow-none) return value
  **/</input>
   <parser>
     <docblock>
@@ -21,12 +21,7 @@
           <name>returns</name>
           <annotations>
             <annotation>
-              <name>transfer</name>
-              <options>
-                <option>
-                  <name>none</name>
-                </option>
-              </options>
+              <name>allow-none</name>
             </annotation>
           </annotations>
           <description>return value</description>
@@ -34,9 +29,9 @@
       </tags>
     </docblock>
     <messages>
-      <message>6: Warning: Test: missing ":" at column 28:
- * Returns: (transfer none) return value
-                           ^</message>
+      <message>6: Warning: Test: missing ":" at column 25:
+ * Returns: (allow-none) return value
+                        ^</message>
     </messages>
   </parser>
   <output>/**
@@ -44,7 +39,7 @@
  *
  * Forgotten colon below will result in a warning.
  *
- * Returns: (transfer none): return value
+ * Returns: (allow-none): return value
  */</output>
 </test>
 
@@ -176,7 +171,7 @@ Moo: anything</description>
  *
  * Annotations spanning multiple lines are not valid
  *
- * Returns: (skip)
+ * Returns: (allow-none)
  * (transfer full): something
  **/</input>
   <parser>
@@ -190,7 +185,7 @@ Moo: anything</description>
           <name>returns</name>
           <annotations>
             <annotation>
-              <name>skip</name>
+              <name>allow-none</name>
             </annotation>
           </annotations>
           <description>
@@ -209,7 +204,7 @@ Moo: anything</description>
  *
  * Annotations spanning multiple lines are not valid
  *
- * Returns: (skip):
+ * Returns: (allow-none):
  * (transfer full): something
  */</output>
 </test>
@@ -220,7 +215,7 @@ Moo: anything</description>
  *
  * Annotations spanning multiple lines are not valid
  *
- * Returns: (skip): Returns tag having a second line which looks
+ * Returns: (allow-none): Returns tag having a second line which looks
  * (like an annotation), but isn't. This should not result in a warning.
  **/</input>
   <parser>
@@ -234,7 +229,7 @@ Moo: anything</description>
           <name>returns</name>
           <annotations>
             <annotation>
-              <name>skip</name>
+              <name>allow-none</name>
             </annotation>
           </annotations>
           <description>Returns tag having a second line which looks
@@ -248,7 +243,7 @@ Moo: anything</description>
  *
  * Annotations spanning multiple lines are not valid
  *
- * Returns: (skip): Returns tag having a second line which looks
+ * Returns: (allow-none): Returns tag having a second line which looks
  * (like an annotation), but isn't. This should not result in a warning.
  */</output>
 </test>
diff --git a/tests/scanner/annotationparser/gi/tag_returns.xml 
b/tests/scanner/annotationparser/gi/tag_returns.xml
index 49389c2..8ccfaa6 100644
--- a/tests/scanner/annotationparser/gi/tag_returns.xml
+++ b/tests/scanner/annotationparser/gi/tag_returns.xml
@@ -8,7 +8,7 @@
  *
  * Test returning a string as an out parameter
  *
- * Returns: (skip): some boolean
+ * Returns: (allow-none): some boolean
  **/</input>
   <parser>
     <docblock>
@@ -21,7 +21,7 @@
           <name>returns</name>
           <annotations>
             <annotation>
-              <name>skip</name>
+              <name>allow-none</name>
             </annotation>
           </annotations>
           <description>some boolean</description>
@@ -34,7 +34,7 @@
  *
  * Test returning a string as an out parameter
  *
- * Returns: (skip): some boolean
+ * Returns: (allow-none): some boolean
  */</output>
 </test>
 
@@ -44,7 +44,7 @@
  *
  * Test returning a string as an out parameter
  *
- * Returns: (skip)): some boolean
+ * Returns: (allow-none)): some boolean
  **/</input>
   <parser>
     <docblock>
@@ -60,8 +60,8 @@
     </docblock>
     <messages>
       <message>6: Error: Test: unbalanced parentheses, annotations will be ignored:
- * Returns: (skip)): some boolean
-                  ^</message>
+ * Returns: (allow-none)): some boolean
+                        ^</message>
     </messages>
   </parser>
   <output>/**
@@ -121,7 +121,7 @@ Tags should go after the comment block description</description>
  *
  * Test returning a string as an out parameter
  *
- * Return value: (skip): some boolean
+ * Return value: (allow-none): some boolean
  **/</input>
   <parser>
     <docblock>
@@ -134,7 +134,7 @@ Tags should go after the comment block description</description>
           <name>returns</name>
           <annotations>
             <annotation>
-              <name>skip</name>
+              <name>allow-none</name>
             </annotation>
           </annotations>
           <description>some boolean</description>
@@ -147,7 +147,7 @@ Tags should go after the comment block description</description>
  *
  * Test returning a string as an out parameter
  *
- * Returns: (skip): some boolean
+ * Returns: (allow-none): some boolean
  */</output>
 </test>
 
@@ -157,7 +157,7 @@ Tags should go after the comment block description</description>
   -->
   <input>/**
  * annotation_object_string_out:
- * @returns: (skip): some boolean
+ * @returns: (allow-none): some boolean
  *
  * Test returning a string as an out parameter
  **/</input>
@@ -172,7 +172,7 @@ Tags should go after the comment block description</description>
           <name>returns</name>
           <annotations>
             <annotation>
-              <name>skip</name>
+              <name>allow-none</name>
             </annotation>
           </annotations>
           <description>some boolean</description>
@@ -185,7 +185,7 @@ Tags should go after the comment block description</description>
  *
  * Test returning a string as an out parameter
  *
- * Returns: (skip): some boolean
+ * Returns: (allow-none): some boolean
  */</output>
 </test>
 
@@ -195,7 +195,7 @@ Tags should go after the comment block description</description>
   -->
   <input>/**
  * annotation_object_string_out:
- * @returns: (skip)): some boolean
+ * @returns: (allow-none)): some boolean
  *
  * Test returning a string as an out parameter
  **/</input>
@@ -213,8 +213,8 @@ Tags should go after the comment block description</description>
     </docblock>
     <messages>
       <message>3: Error: Test: unbalanced parentheses, annotations will be ignored:
- * @returns: (skip)): some boolean
-                   ^</message>
+ * @returns: (allow-none)): some boolean
+                         ^</message>
     </messages>
   </parser>
   <output>/**
diff --git a/tests/scanner/annotationparser/gtkdoc/annotations/tester.c.xml 
b/tests/scanner/annotationparser/gtkdoc/annotations/tester.c.xml
index 9bdbc0e..d28d5d9 100644
--- a/tests/scanner/annotationparser/gtkdoc/annotations/tester.c.xml
+++ b/tests/scanner/annotationparser/gtkdoc/annotations/tester.c.xml
@@ -138,9 +138,6 @@
         </tag>
       </tags>
     </docblock>
-    <messages>
-      <message>9: Warning: Test: unexpected annotation: allow-none</message>
-    </messages>
   </parser>
   <output>/**
  * annotation_nullable:
diff --git a/tests/scanner/regress.c b/tests/scanner/regress.c
index 875b136..1bad36e 100644
--- a/tests/scanner/regress.c
+++ b/tests/scanner/regress.c
@@ -1189,7 +1189,7 @@ regress_test_table_ghash_const (void)
 /**
  * regress_test_ghash_null_return:
  *
- * Return value: (element-type utf8 utf8) (transfer none):
+ * Return value: (element-type utf8 utf8) (transfer none) (allow-none):
  */
 const GHashTable *
 regress_test_ghash_null_return (void)


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