]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
support throws attribute in metadata
authorJuerg Billeter <j@bitron.ch>
Mon, 7 Jan 2008 22:11:39 +0000 (22:11 +0000)
committerJürg Billeter <juergbi@src.gnome.org>
Mon, 7 Jan 2008 22:11:39 +0000 (22:11 +0000)
2008-01-07  Juerg Billeter  <j@bitron.ch>

* vapigen/valagidlparser.vala: support throws attribute in metadata

* vapi/packages/gstreamer-0.10/gstreamer-0.10.metadata: fix error
  parameters in gst_message_* functions

* vapi/gstreamer-0.10.vapi: regenerated

Patch by Andrea Del Signore, fixes bug 507460

svn path=/trunk/; revision=806

ChangeLog
vapi/gstreamer-0.10.vapi
vapi/packages/gstreamer-0.10/gstreamer-0.10.metadata
vapigen/valagidlparser.vala

index 443eaa3e4cdf896e35089802783b63302d03559d..032b6fef75a256852fe374ef73dd9b95bfca91c6 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2008-01-07  Jürg Billeter  <j@bitron.ch>
+
+       * vapigen/valagidlparser.vala: support throws attribute in metadata
+
+       * vapi/packages/gstreamer-0.10/gstreamer-0.10.metadata: fix error
+         parameters in gst_message_* functions
+
+       * vapi/gstreamer-0.10.vapi: regenerated
+
+       Patch by Andrea Del Signore, fixes bug 507460
+
 2008-01-07  Jürg Billeter  <j@bitron.ch>
 
        * vapi/glib-2.0.vapi: add missing bindings for g_filename_*,
index 603a175510d70b3ca828e28d3aca450adf60ea3d..01944d1347b30306fc109dfb3ac8328a75f3c644 100644 (file)
@@ -717,8 +717,8 @@ namespace Gst {
                public Message.duration (Gst.Object src, Gst.Format format, int64 duration);
                public Message.element (Gst.Object src, Gst.Structure structure);
                public Message.eos (Gst.Object src);
-               public Message.error (Gst.Object src, string debug) throws GLib.Error;
-               public Message.info (Gst.Object src, string debug) throws GLib.Error;
+               public Message.error (Gst.Object src, GLib.Error error, string debug);
+               public Message.info (Gst.Object src, GLib.Error error, string debug);
                public Message.latency (Gst.Object src);
                public Message.new_clock (Gst.Object src, Gst.Clock clock);
                public Message.segment_done (Gst.Object src, Gst.Format format, int64 position);
@@ -726,20 +726,20 @@ namespace Gst {
                public Message.state_changed (Gst.Object src, Gst.State oldstate, Gst.State newstate, Gst.State pending);
                public Message.state_dirty (Gst.Object src);
                public Message.tag (Gst.Object src, Gst.TagList tag_list);
-               public Message.warning (Gst.Object src, string debug) throws GLib.Error;
+               public Message.warning (Gst.Object src, GLib.Error error, string debug);
                public void parse_async_start (bool new_base_time);
                public void parse_buffering (int percent);
                public void parse_clock_lost (out weak Gst.Clock clock);
                public void parse_clock_provide (out weak Gst.Clock clock, bool ready);
                public void parse_duration (Gst.Format format, int64 duration);
-               public void parse_error (string debug) throws GLib.Error;
-               public void parse_info (string debug) throws GLib.Error;
+               public void parse_error (out weak GLib.Error gerror, out weak string debug);
+               public void parse_info (out weak GLib.Error gerror, out weak string debug);
                public void parse_new_clock (out weak Gst.Clock clock);
                public void parse_segment_done (Gst.Format format, int64 position);
                public void parse_segment_start (Gst.Format format, int64 position);
                public void parse_state_changed (Gst.State oldstate, Gst.State newstate, Gst.State pending);
                public void parse_tag (out weak Gst.TagList tag_list);
-               public void parse_warning (string debug) throws GLib.Error;
+               public void parse_warning (out weak GLib.Error gerror, out weak string debug);
                public static weak string type_get_name (Gst.MessageType type);
                public static GLib.Quark type_to_quark (Gst.MessageType type);
        }
@@ -1549,7 +1549,7 @@ namespace Gst {
                public uint flags;
                public static bool check_uniqueness (GLib.List list, string name);
                public static void default_deep_notify (GLib.Object object, Gst.Object orig, GLib.ParamSpec pspec, string excluded_props);
-               public void default_error (string debug) throws GLib.Error;
+               public void default_error (GLib.Error error, string debug);
                public weak string get_name ();
                public weak string get_name_prefix ();
                public weak Gst.Object get_parent ();
index 341a9ceee3ab59d5cb382a77f7f265e81b1eed32..2698c998a7ca8927e8b884453e600746d71eda09 100644 (file)
@@ -28,4 +28,16 @@ GstTypeFind.suggest hidden="1"
 gst_type_register_static_full hidden="1"
 GstURIHandler::new_uri has_emitter="1"
 gst_version_string transfer_ownership="1"
-
+gst_message_new_error throws="0"
+gst_message_new_info throws="0"
+gst_message_new_warning throws="0"
+gst_message_parse_error throws="0"
+gst_message_parse_error.gerror is_out="1"
+gst_message_parse_error.debug is_out="1"
+gst_message_parse_info throws="0"
+gst_message_parse_info.gerror is_out="1"
+gst_message_parse_info.debug is_out="1"
+gst_message_parse_warning throws="0"
+gst_message_parse_warning.gerror is_out="1"
+gst_message_parse_warning.debug is_out="1"
+gst_object_default_error throws="0"
index 5289558531a15fbc0de289e322aff51c5b80256f..57dcde3f219c9914fb8d45dab2842ff526c91957 100644 (file)
@@ -1167,6 +1167,7 @@ public class Vala.GIdlParser : CodeVisitor {
                }
                
                bool add_ellipsis = false;
+               bool suppress_throws = false;
 
                var attributes = get_attributes (f.symbol);
                if (attributes != null) {
@@ -1194,6 +1195,10 @@ public class Vala.GIdlParser : CodeVisitor {
                                                return_type.array_rank = 1;
                                                return_type.is_out = false;
                                        }
+                               } else if (nv[0] == "throws") {
+                                       if (eval (nv[1]) == "0") {
+                                               suppress_throws = true;
+                                       }
                                }
                        }
                }
@@ -1221,7 +1226,7 @@ public class Vala.GIdlParser : CodeVisitor {
                                }
                        }
 
-                       if (param.type.is_error) {
+                       if (suppress_throws == false && param.type.is_error) {
                                m.add_error_domain (parse_type (param.type));
                                continue;
                        }