summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorGiovanni Campagna <gcampagna@src.gnome.org>2014-02-25 18:55:37 +0100
committerGiovanni Campagna <gcampagna@src.gnome.org>2014-02-26 17:27:08 +0100
commit6432c9213bff425d7d0f2be39df59337588caff3 (patch)
tree071456aeb8251cbdfba7fc0b2a1612386540bef4 /tests
parent63022d4290264182d1d41cffc9bf12f202931379 (diff)
downloadgobject-introspection-6432c9213bff425d7d0f2be39df59337588caff3.tar.gz
maintransformer: don't pair methods if the symbol prefix does not match with a final underscore
In cases like g_resources_register() and gdk_events_get_angle(), the c_symbol_prefix of the first parameter (resp. g_resource and gdk_event) is a prefix of the symbol, but the next character is not _, so that should not be considered a method. For backward compatibility reasons, we still generate one, but then it's not included in the documentation (because of moved_to)
Diffstat (limited to 'tests')
-rw-r--r--tests/scanner/Regress-1.0-expected.gir29
-rw-r--r--tests/scanner/regress.c10
-rw-r--r--tests/scanner/regress.h3
3 files changed, 42 insertions, 0 deletions
diff --git a/tests/scanner/Regress-1.0-expected.gir b/tests/scanner/Regress-1.0-expected.gir
index 5ba2be8b..d25e41c8 100644
--- a/tests/scanner/Regress-1.0-expected.gir
+++ b/tests/scanner/Regress-1.0-expected.gir
@@ -2140,6 +2140,18 @@ use it should be.</doc>
</parameter>
</parameters>
</constructor>
+ <method name="_not_a_method"
+ c:identifier="regress_test_boxeds_not_a_method"
+ moved-to="test_boxeds_not_a_method">
+ <return-value transfer-ownership="none">
+ <type name="none" c:type="void"/>
+ </return-value>
+ <parameters>
+ <instance-parameter name="boxed" transfer-ownership="none">
+ <type name="TestBoxed" c:type="RegressTestBoxed*"/>
+ </instance-parameter>
+ </parameters>
+ </method>
<method name="copy" c:identifier="regress_test_boxed_copy">
<return-value transfer-ownership="full">
<type name="TestBoxed" c:type="RegressTestBoxed*"/>
@@ -5109,6 +5121,23 @@ libgnome-keyring.</doc>
</parameter>
</parameters>
</function>
+ <function name="test_boxeds_not_a_method"
+ c:identifier="regress_test_boxeds_not_a_method">
+ <return-value transfer-ownership="none">
+ <type name="none" c:type="void"/>
+ </return-value>
+ <parameters>
+ <parameter name="boxed" transfer-ownership="none">
+ <type name="TestBoxed" c:type="RegressTestBoxed*"/>
+ </parameter>
+ </parameters>
+ </function>
+ <function name="test_boxeds_not_a_static"
+ c:identifier="regress_test_boxeds_not_a_static">
+ <return-value transfer-ownership="none">
+ <type name="none" c:type="void"/>
+ </return-value>
+ </function>
<function name="test_cairo_context_full_return"
c:identifier="regress_test_cairo_context_full_return">
<return-value transfer-ownership="full">
diff --git a/tests/scanner/regress.c b/tests/scanner/regress.c
index 4507bc6c..1bad36e3 100644
--- a/tests/scanner/regress.c
+++ b/tests/scanner/regress.c
@@ -1872,6 +1872,16 @@ regress_test_boxed_equals (RegressTestBoxed *boxed,
regress_test_simple_boxed_a_equals(&other->nested_a, &boxed->nested_a));
}
+void
+regress_test_boxeds_not_a_method (RegressTestBoxed *boxed)
+{
+}
+
+void
+regress_test_boxeds_not_a_static (void)
+{
+}
+
static void
regress_test_boxed_free (RegressTestBoxed *boxed)
{
diff --git a/tests/scanner/regress.h b/tests/scanner/regress.h
index e6ae1c22..ad2cb1fb 100644
--- a/tests/scanner/regress.h
+++ b/tests/scanner/regress.h
@@ -426,6 +426,9 @@ RegressTestBoxed *regress_test_boxed_copy (RegressTestBoxed *boxed);
gboolean regress_test_boxed_equals (RegressTestBoxed *boxed,
RegressTestBoxed *other);
+void regress_test_boxeds_not_a_method (RegressTestBoxed *boxed);
+void regress_test_boxeds_not_a_static (void);
+
typedef struct _RegressTestBoxedB RegressTestBoxedB;
struct _RegressTestBoxedB