objects/signals-delegate.vala \
objects/signals-delegate-parameter.vala \
objects/signals-dymanic-invalid-handler.test \
+ objects/signals-error-marshal.vala \
objects/signals-fundamental-return.vala \
objects/signals-gobject-return.vala \
objects/signals-lambda-delegate.vala \
--- /dev/null
+errordomain FooError {
+ BAD;
+}
+
+struct Bar {
+ public int i;
+}
+
+class Foo : GLib.Object {
+ signal void foo (void* p, Bar bar);
+ signal void bar (void* p, Error e);
+
+ public Foo () {
+ bar.connect (callback);
+ bar (null, new FooError.BAD ("bad"));
+ }
+
+ void callback (void* p, Error e) {
+ assert (p == null);
+ assert (e.code == FooError.BAD);
+ }
+}
+
+void main() {
+ var foo = new Foo ();
+}
[Compact]
[ErrorBase]
- [CCode (copy_function = "g_error_copy", free_function = "g_error_free", type_id = "G_TYPE_ERROR")]
+ [CCode (copy_function = "g_error_copy", free_function = "g_error_free")]
public class Error {
[PrintfFormat]
public Error (Quark domain, int code, string format, ...);