From 92fb04afa680bbe5089003db6f62c5e0cef25255 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tomasz=20Mi=C4=85sko?= Date: Fri, 23 Nov 2018 00:00:00 +0000 Subject: [PATCH] Define grefcount and gatomicrefcount as aliases to gint Backport from !76, as requested in #254 --- giscanner/ast.py | 2 + ....TestReferenceCounters-atomicrefcount.page | 14 ++++++ ...egress.TestReferenceCounters-refcount.page | 14 ++++++ .../Regress.TestReferenceCounters.page | 35 +++++++++++++++ ....TestReferenceCounters-atomicrefcount.page | 18 ++++++++ ...egress.TestReferenceCounters-refcount.page | 18 ++++++++ .../Regress.TestReferenceCounters.page | 43 +++++++++++++++++++ ....TestReferenceCounters-atomicrefcount.page | 14 ++++++ ...egress.TestReferenceCounters-refcount.page | 14 ++++++ .../Regress.TestReferenceCounters.page | 40 +++++++++++++++++ tests/scanner/Regress-1.0-expected.gir | 8 ++++ tests/scanner/regress.h | 8 ++++ 12 files changed, 228 insertions(+) create mode 100644 tests/scanner/Regress-1.0-C-expected/Regress.TestReferenceCounters-atomicrefcount.page create mode 100644 tests/scanner/Regress-1.0-C-expected/Regress.TestReferenceCounters-refcount.page create mode 100644 tests/scanner/Regress-1.0-C-expected/Regress.TestReferenceCounters.page create mode 100644 tests/scanner/Regress-1.0-Gjs-expected/Regress.TestReferenceCounters-atomicrefcount.page create mode 100644 tests/scanner/Regress-1.0-Gjs-expected/Regress.TestReferenceCounters-refcount.page create mode 100644 tests/scanner/Regress-1.0-Gjs-expected/Regress.TestReferenceCounters.page create mode 100644 tests/scanner/Regress-1.0-Python-expected/Regress.TestReferenceCounters-atomicrefcount.page create mode 100644 tests/scanner/Regress-1.0-Python-expected/Regress.TestReferenceCounters-refcount.page create mode 100644 tests/scanner/Regress-1.0-Python-expected/Regress.TestReferenceCounters.page diff --git a/giscanner/ast.py b/giscanner/ast.py index a9a6e13b..75daa459 100644 --- a/giscanner/ast.py +++ b/giscanner/ast.py @@ -322,6 +322,8 @@ type_names['gssize'] = TYPE_SSIZE type_names['gintptr'] = TYPE_INTPTR type_names['guintptr'] = TYPE_UINTPTR type_names['gconstpointer'] = TYPE_ANY +type_names['grefcount'] = TYPE_INT +type_names['gatomicrefcount'] = TYPE_INT # We used to support these; continue to do so type_names['any'] = TYPE_ANY diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestReferenceCounters-atomicrefcount.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestReferenceCounters-atomicrefcount.page new file mode 100644 index 00000000..6c07402d --- /dev/null +++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestReferenceCounters-atomicrefcount.page @@ -0,0 +1,14 @@ + + + + + + Regress.TestReferenceCounters->atomicrefcount + + + diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestReferenceCounters-refcount.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestReferenceCounters-refcount.page new file mode 100644 index 00000000..ed4aab56 --- /dev/null +++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestReferenceCounters-refcount.page @@ -0,0 +1,14 @@ + + + + + + Regress.TestReferenceCounters->refcount + + + diff --git a/tests/scanner/Regress-1.0-C-expected/Regress.TestReferenceCounters.page b/tests/scanner/Regress-1.0-C-expected/Regress.TestReferenceCounters.page new file mode 100644 index 00000000..8176ff9a --- /dev/null +++ b/tests/scanner/Regress-1.0-C-expected/Regress.TestReferenceCounters.page @@ -0,0 +1,35 @@ + + + + + + Regress.TestReferenceCounters + + + + Constructors + + + Methods + + + Static Functions + + + Fields + + + Other + + diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestReferenceCounters-atomicrefcount.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestReferenceCounters-atomicrefcount.page new file mode 100644 index 00000000..afd078e2 --- /dev/null +++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestReferenceCounters-atomicrefcount.page @@ -0,0 +1,18 @@ + + + + + atomicrefcount + + Regress.TestReferenceCounters.atomicrefcount + +TestReferenceCounters.atomicrefcount: Number(gint) (Read / Write) + + + + diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestReferenceCounters-refcount.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestReferenceCounters-refcount.page new file mode 100644 index 00000000..8784e28a --- /dev/null +++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestReferenceCounters-refcount.page @@ -0,0 +1,18 @@ + + + + + refcount + + Regress.TestReferenceCounters.refcount + +TestReferenceCounters.refcount: Number(gint) (Read / Write) + + + + diff --git a/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestReferenceCounters.page b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestReferenceCounters.page new file mode 100644 index 00000000..8f5b2d2d --- /dev/null +++ b/tests/scanner/Regress-1.0-Gjs-expected/Regress.TestReferenceCounters.page @@ -0,0 +1,43 @@ + + + + + + Regress.TestReferenceCounters + +const Regress = imports.gi.Regress; + +let testReferenceCounters = new Regress.TestReferenceCounters({ + refcount: value + atomicrefcount: value +}); + + + + + Constructors + + + Methods + + + Static Functions + + + Fields + + + Other + + diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestReferenceCounters-atomicrefcount.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestReferenceCounters-atomicrefcount.page new file mode 100644 index 00000000..6c07402d --- /dev/null +++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestReferenceCounters-atomicrefcount.page @@ -0,0 +1,14 @@ + + + + + + Regress.TestReferenceCounters->atomicrefcount + + + diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestReferenceCounters-refcount.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestReferenceCounters-refcount.page new file mode 100644 index 00000000..ed4aab56 --- /dev/null +++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestReferenceCounters-refcount.page @@ -0,0 +1,14 @@ + + + + + + Regress.TestReferenceCounters->refcount + + + diff --git a/tests/scanner/Regress-1.0-Python-expected/Regress.TestReferenceCounters.page b/tests/scanner/Regress-1.0-Python-expected/Regress.TestReferenceCounters.page new file mode 100644 index 00000000..bc8651ab --- /dev/null +++ b/tests/scanner/Regress-1.0-Python-expected/Regress.TestReferenceCounters.page @@ -0,0 +1,40 @@ + + + + + + Regress.TestReferenceCounters + +from gi.repository import Regress + +test_reference_counters = Regress.TestReferenceCounters() + + + + + Constructors + + + Methods + + + Static Functions + + + Fields + + + Other + + diff --git a/tests/scanner/Regress-1.0-expected.gir b/tests/scanner/Regress-1.0-expected.gir index f69b8514..1753233f 100644 --- a/tests/scanner/Regress-1.0-expected.gir +++ b/tests/scanner/Regress-1.0-expected.gir @@ -4022,6 +4022,14 @@ the introspection client langage. + + + + + + + + diff --git a/tests/scanner/regress.h b/tests/scanner/regress.h index f0885f2b..df5a0c25 100644 --- a/tests/scanner/regress.h +++ b/tests/scanner/regress.h @@ -4,6 +4,7 @@ #ifndef _GI_DISABLE_CAIRO #include #endif +#include #include #include #include @@ -1491,4 +1492,11 @@ typedef struct { GVariant * regress_get_variant (void); +typedef struct _RegressTestReferenceCounters RegressTestReferenceCounters; + +struct _RegressTestReferenceCounters { + grefcount refcount; + gatomicrefcount atomicrefcount; +}; + #endif /* __GITESTTYPES_H__ */ -- 2.18.1