[vala/staging] codewriter: Write "weak" modifier for properties
- From: Rico Tzschichholz <ricotz src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [vala/staging] codewriter: Write "weak" modifier for properties
- Date: Mon, 2 Sep 2019 08:32:22 +0000 (UTC)
commit 6afaf446939802750da3c4b76bbca8a75dd27746
Author: Jeremy Philippe <jeremy philippe gmail com>
Date: Sun Sep 1 21:57:01 2019 +0200
codewriter: Write "weak" modifier for properties
tests/fastvapi/fastvapitest.vala | 4 ++++
tests/fastvapi/fastvapitest.vapi-expected | 10 +++++++---
vala/valacodewriter.vala | 4 ++++
3 files changed, 15 insertions(+), 3 deletions(-)
---
diff --git a/tests/fastvapi/fastvapitest.vala b/tests/fastvapi/fastvapitest.vala
index 02025e307..b711b5c29 100644
--- a/tests/fastvapi/fastvapitest.vala
+++ b/tests/fastvapi/fastvapitest.vala
@@ -25,8 +25,12 @@ namespace FastVapi {
public int field;
+ public weak Test weak_field;
+
public string property { get; construct set; }
+ public weak Test weak_property { get; private set; }
+
public Test () {
}
diff --git a/tests/fastvapi/fastvapitest.vapi-expected b/tests/fastvapi/fastvapitest.vapi-expected
index 0542a563d..1826b8299 100644
--- a/tests/fastvapi/fastvapitest.vapi-expected
+++ b/tests/fastvapi/fastvapitest.vapi-expected
@@ -6,12 +6,16 @@ namespace FastVapi {
public class Test : Object {
[Source (filename = "fastvapitest.vala", line = 26, column = 3)]
public int field;
- [Source (filename = "fastvapitest.vala", line = 30, column = 3)]
+ [Source (filename = "fastvapitest.vala", line = 28, column = 3)]
+ public weak Test weak_field;
+ [Source (filename = "fastvapitest.vala", line = 34, column = 3)]
public Test ();
- [Source (filename = "fastvapitest.vala", line = 33, column = 3)]
+ [Source (filename = "fastvapitest.vala", line = 37, column = 3)]
public void method ();
- [Source (filename = "fastvapitest.vala", line = 28, column = 3)]
+ [Source (filename = "fastvapitest.vala", line = 30, column = 3)]
public string property { get; set construct; }
+ [Source (filename = "fastvapitest.vala", line = 32, column = 3)]
+ public weak Test weak_property { get; private set; }
[Source (filename = "fastvapitest.vala", line = 24, column = 3)]
public signal void some_signal (int param);
}
diff --git a/vala/valacodewriter.vala b/vala/valacodewriter.vala
index 1f223b6b8..97aa48136 100644
--- a/vala/valacodewriter.vala
+++ b/vala/valacodewriter.vala
@@ -837,6 +837,10 @@ public class Vala.CodeWriter : CodeVisitor {
write_string ("override ");
}
+ if (prop.property_type.is_weak ()) {
+ write_string ("weak ");
+ }
+
write_type (prop.property_type);
write_string (" ");
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]